Implement create_container() returning a dict with:
register(token, factory, singleton=False) — register a provider. - singleton=True: factory called once; subsequent resolves return the cached value.
- singleton=False (default): factory called every time resolve is called.
resolve(token) — instantiate and return the value.solve registers tokens backed by an auto-incrementing counter factory and
returns a list of resolved values. Singleton tokens return the same
counter value; transient tokens return a new one each time.
Sample tests