opts.context can specify object instance for injection context