Remove signals

They were really only used in one place. Removing them
completely reduces the risk of someone using them and we
actually having to maintain the code.
Add documentation target to CMake

Requires doxygen
Remove unused files
Remove debug output in keyboard system
Add documentation
Refactored EntityFilter to be easier to document
Remove unneeded files
Add more documentation

Everything should be documented now