finished phase 4
Finished phase V, refactoring and bonus left
refactored a bit
before bonus
before bonus