initial code commit, really just boilerplate stuff, preliminary classes and functions, etc.