Started splitting the engine up into separate files.
Added more source code comments.