Add a non-strict mode for context creation

In some scenarios, it is better if context creation does not fail when there are missing services. This branch adds a toggle for "strict mode"—enabled by default—which controls whether context creation will fail fast when a required service cannot be instantiated.