Initial commit.
Main loop and state management refactoring.
Refactoring, stability, blah, blah, blah...
Refactoring
Adding CMaleLists.txt
Adding license header.