first commit
functioning version before refactor