Engine refactoring
Doxygen!