Prefer session persistent configuration over database

This will allow setting something in the session and having that value override the value from the database. If persist() is called for a given key, a following get() will result in the session persisted value being returned. set() will still save the value in the database.

This is mostly useful for last-mile scenarios (and future plugins) that need to affect the configuration of the system without altering the data in the configuration table.