[FEATURE] Support dropping instances in the Object Manager
This adds a non-API function to the Object Manager which allows for
unregistering instances of arbitrary objects. The next time an object
of that type is requested, a new instance will be created.
This function can be used in functional tests, but must be used with
care because if other parts of the application already use an instance
of the respective type, the whole application might become unstable
because multiple instances of a singleton could be the result.