First Overall Working Version

This is the first overall working version of the deliverable. Code has
been packaged better into classes. No GUI yet.