First draft. Most important classes are compilable, but useless. Focus is on making sure all necessary methods have been created and some simple javadoc-comments.