Adds a settings db migration, bootleg DI, and basic session config

This commit updates the initial database migration to add as settings
table. This table will be used to store dynamic settings, e.g. the
key for signing session cookies.

This commit also adds an object for tracking dependencies and a basic
start to configuring the session module based on the settings stored
in the database.