Federate configuration settings

Changes the config table from a column-based table to a key-value table with namespacing. This allows several parts of osTicket to store their respective configurations in the same table without requiring database structure updates.

This is going to pave the way for plugins with independent configurations as well as make things like staff- or client-based configuration easier to manage