Initial Commit, Lots and lots of base code, Views and ViewModels work for the most part