cleaned up all methods and added simple explanations for why everything was added
all tests passing with gradle build