Tidied up Evaluator, Types passes first 3 tests.
Types passes first 6 tests.
Passes first 10 tests.
Part 4 passes tests.
Part 5 passes first 11 tests.
Part 5 passes all tests.