Implemented null checking in TypeOf matcher
Removed duplication
TypeOf matcher now handles child types
Removed ParentContext dependency - name

We don't want a context to both have a collection of child context, and
a parent context, when the context is implemented in a pure functional
way.
Removed ParentContext dependency - setup/teardown
Removed ParentContext from TestContext
Removed 2 unnecessary lines