Initial commit of Phase 1

Still need to refactor and possible add another class