feature-DBPerformance

Breaking out common functions into a QModelBase class.
Improving performance by removing reliance on GetColumn.
Adding unit tests.
Adding local caching of database objects as they get created.
I do not see a QModel.trait.php added to the codebase. I guess this is typo!?