Basis of Version 2.0.0.

Which has an improved hands of interception model.
Work is needed to test and check that more work is not needed around parent context injection.
Also, this could be made package private; it's an implementation detail that can be hidden from consumers.