Task 4 appears to be working completely

Though there is a bug with calculateScore. It seems to give inconsistent
values.