Rename some files
Keep generated files outside of source tree
Fix comment
Split main CMakeLists.txt across subdirectories
Rename hook methods and add corresponding typedefs
Make Profiler non-copyable
Fix method name