The main idea of the framework is to keep thing simple, loosely coupled, customizable and extendable. In order to do so, three main concepts are used:
Handler is the exposed business logic. By example, you may not directly use db but maybe manipulate or expose data. In order to do stuff, you may need some providers.
Providers is everything that will be consumed by handler (or other provider). By example, you may have a repository that can access to db.
Service provider is a configuration for resolving provider, expose handlers, make that works together.