Move top-level CMakeLists.txt file to the actual top-level.

It's a bit unorthodox to have to do "cmake src" rather than "cmake .",
(or similarly, within a build directory, to have to do "cmake ../src"
rather than "cmake .."). So move this file to the top level to support
the more orthodox form.

Additionally, the presence of the top-level CMakeLists.txt file
clearly advertises that this project is using cmake, so the alert
reader can easily guess how to build things.
More changes for Unreal Engine 4 GL4 compatibility. With this change UE4 can be traced/replayed in full-stream mode in both GL3 and GL4 mode, and snapshot/restore works in both modes too (with some query issues I'm still looking at).

- Adding glDispatchCompute, glDispatchComputeIndirect, glBindImageTexture, glCopyImageSubData to replayer whitelist
- Texture snapshot/restore code supports cubemap arrays now, but these paths are not really tested yet
- Adding voglreplay new command line param and replayer object flag to disable front buffer restoring (I may make this the default): --disable_frontbuffer_restore
- Generic state snapshot/restore code now supports GL4 image unit bindings