[DB MIGRATION REQ'D] Implement and Enable DB-Backed Sessions

Creates SessionDAO Interface and MySQL implementation
Creates session table
Adds SessionCache::init() to start sessions and set handlers
Modifies controllers to make use of this

References #962
Avoid DateTime::__construct fatal error

From previous commit, when running all_integration_tests.php, was getting:
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting...

The DateTime construct error was happening because in ThinkUpController, SessionCache::init was being called in ``__construct``, before ``initializeApp``` is called in ``go``. The default timezone is set in ``initializeApp``.

Moved date_default_timezone_set($config->getValue('timezone')); before SessionCache::init call.
[DB MIGRATION REQ'D] Implement and Enable DB-Backed Sessions

Creates SessionDAO Interface and MySQL implementation
Creates session table
Adds SessionCache::init() to start sessions and set handlers
Modifies controllers to make use of this

References #962
Fix for failing tests from Session Changes

Handle new tables in installer test
Handle session already startin in other tests in Controller test.
Fix wrong table count in mysql install dao test.
Merged Avoid DateTime::__construct fatal error
Fixes for tests with database sessions.

Set a TU_MODE in setmode, check for that cookie
in the various places needed.