First commit, already have a large portion of the framework complete