MySQL Storage Engine support

This big collection of changes does the following:
- Use InnoDB (or, for log_floodcontrol and log_online, MEMORY) by default for new installs (if InnoDB is available - otherwise falls back to MyISAM)
- Add support for specifying a storage engine with $smcFunc['db_create_table']
- Add support for Fulltext indexes for InnoDB tables when running MySQL 5.6.4 or newer
- Add storage engine to array returned by smf_db_table_structure (currently not used in SMF, but some may find it useful)
- Minor code cleanup here and there

Note: In order to allow log_online to be MEMORY, the "url" column in this table was changed from text to varchar(1024). For consistency, I also made this change in PostgreSQL even though there is no benefit for doing so.
Because there's no point in doing so for just one table when that would still leave a bunch of other tables with different storage engines compared to what you'd get with a fresh install.