* get rid of as many extern / function definition in QEMU codebase.
* mostly moved cpu / gdb related code.
* move qemu snapshot code in dedicated files.
* Add cpu_run pre/post exec hooks, to hook the cpu just before / after it runs target code.
* Refactor hooks to separate them in different files
* Remove most extern variables
* Reduce the amount of extra code in QEMU
* Add clang-format script
* Unset object to free memory space allocated (memory leak in fast snapshot implementation for libafl)
---------
Co-authored-by: Sebastien Foucher <sebastien.foucher@se.com>
Co-authored-by: Romain Malmain <romain.malmain@pm.me>