This commit is a refactoring of code that has been located in the main
package. We introduce separate packages for the main application, jobs,
notifications, and request handlers.
Dependencies are injected from the main application, this will make
testing easier.