first commit - currently converting existing code to cleaner structuring