Allow generation and serving of abritrary custom pages

The administrator can define pages in the admin panel defined as type
'other', and when set to active, those pages can be served from the
/pages/<page-name-slug> URL from the base of the helpdesk.

This is mocked up only against Apache
Add export feature to osTicket
Make API requests stateless

Disable DB session storage. This chews up database space and processing time
for a request that will never resume the same session (given the current API
model anyway).
Fallback to base64_decode if imap_base64 fails

Some mail clients and servers (like the ones developed in the northwestern
United States) sometimes place encoded and non-encoded data in an email
body declared with "Content-Transfer-Encoding: base64". imap_base64 will
refuse to decode the body if it contains non base64 characters (like a
period, colon, apostrophe, etc). This patch uses base64_decode as a fallback
which will make a best effort to decode the data. In the case of our test
mails, the decoded data will contain garbage where the non-base64-encoded
data was in the original mail, but at least the message is preserved.
Several fixes for the CLI manager and module class
Add an importer to go with the exporter
Move export logic to class Exporter

This will facilitate a web-based export significantly easier
Merge pull request #623 from greezybacon/issue/stateless-api

Make API requests stateless

Reviewed-By: Jared Hancock <jared@osticket.com>
Do numeric comparison on db versions

Support MariaDB version 10.0 and forward, which previously did not appear to
be 'greater than' version 4.4 as in php '10.0' < '4.4'. Performing a split
by the dots allows php to perform a numeric comparison.
Allow authentication with email-address+password

Previously, username and password were required. With this patch, the
email address can be used to authenticate the user with the password
Allow custom logo integration on client site

Administrators are allowed to upload one or more logos and then select from
the uploaded logos to set one for the client site. Logos can also be deleted
on settings->pages submission
Properly center dialog boxes
Freshen up default logo
Merge pull request #630 from greezybacon/issue/629

Do numeric comparison on db versions

Reviewed-By: Peter Rotich <peter@osticket.com>
Merge pull request #624 from greezybacon/issue/imap-base64-fails

Fallback to base64_decode if imap_base64 fails
Reviewed-By: Peter Rotich <peter@osticket.com>
Merge pull request #616 from greezybacon/feature/custom-pages

Allow generation and serving of abritrary custom pages

Reviewed-By: Peter Rotich <peter@osticket.com>
Merge pull request #631 from greezybacon/feature/email-logins

Allow authentication with email-address+password

Reviewed-By: Peter Rotich <peter@osticket.com>
Merge pull request #626 from greezybacon/feature/export

Data migration tool

Reviewed-By: Peter Rotich <peter@osticket.com>
Merge pull request #632 from greezybacon/feature/custom-logo

Allow custom logo integration on client site

Reviewed-By: Peter Rotich <peter@osticket.com>
Logo is not displayed in the offline page

After merging the custom logo patch, the logo on the offline page
disappeared. This addresses the issue by exempting the logo.php script for
the offline redirect in client.inc.php