Documentation

The promised documentation and removal of a redundant line in CMakeLists.txt.

@bombela Sorry for all those pull requests, I should have tested it more beforehand.

Edit: I added some more patches, commit messages should explain them all.