Turned .context into a setter so that it can inject __instantiate into any
context that a user may want to use at any time (as opposed to only in the
constructor).