Add some more classes/methods to the API. Also: refactor the API, and split the ServiceContainer into ServiceContainer and ServiceRegistry.