Initial Commit
Initial commit, before refactoring
merging from github