CMake cleanup

This cleans up the build system so that CMake can now be used to build on Windows using MSVC (including for x64).

To facilitate this some other changes were made:
 - Required CMake version bumped to 2.8.11
 - ~~Qt4 support was dropped. Qt5 is now required.~~ Qt4 support reinstated.
 - The in-tree GLFW binaries in `externals/` were updated from 3.0.2 to 3.0.4, and now both 32-bit and 64-bit versions are included.
 - GLEW was replaced with a glLoadGen generate loader, eliminating the necessity of having GLEW binaries.

This was tested on both Windows and Linux. I did not test on OS X, ~~and would like if someone did so to ensure I didn't break anything~~ @archshift tested it for me.

GLFW works fine on both platforms, ~~but Qt fails to initialize a context on Windows (All function pointers are loaded as stubs that return 0 or NULL.) and crashes with a segfault on Linux. These happen even on master, so I suspect they're driver or Qt-version related. I plan on working on these issues next.~~ Fixed by #75.
It was generated using [glLoadGen](https://bitbucket.org/alfonse/glloadgen/wiki/Home). Generator is MIT licensed.
The inconsistent whitespace is as generated, I didn't modify the file. I can normalize the indentation and add a comment specifying the file's origin in a commit and squash it before the merge.