Initial Commit

Contains the initial workable version of this application.
This is going to take a lot of work...