Finished sprint 2 and refactored code with some cleanups