Make protected method protected.

PHPUnit loses its lunch when trait methods are renamed. This change also
simplifies the classes using PDODriverTrait.
Implement listTables() for MySql.

This will probably need to change as other database drivers are
implemented. But it is a working prototype.
Use built-in methods instead of string concatenation.
Table names should be quoted as well.
Move methods that return SQL into the SQLDialectTrait.

The dialects should be responsible for all SQL snippets. This should
help consolidate platform differences into once place.
Start adding columnType()

SqlDialects will need a way to convert from platform specific types to
the abstract ones used in the rest of the framework.
Add basic describe() to MySQL.

Primary key, indexes, and platform specifics still need to be implemented.
Shift traits around.

This solves the parent + child drivers from including sql related
traits. Instead the child class includes only its platform related
trait.
Add key to reflected schema.
Add support for field metadata retrieval.

This might only be used for MySQL but is required to preserve
table/column encodings & comments.
Move driver specific code into MysqlDialect.

Postgres and sqlite implement table schema listings with different
column names. Push references to specific columns into the dialect.
Add test for column comments in MySQL.
Merge pull request #1195 from markstory/3.0-describe

3.0 Add very basic schema reflection
Add support for parsing Sqlite column types.
Add missing tests for mysql.
Add listTables for SQlite.
Add more tests for Mysql.

Add tests for default values and boolean columns.
First pass at implementing describe() for Sqlite.
Only skip tests when a connection is needed.

Many tests don't require a connection so we can run those when
Datasource.test is anything.
Don't use mocks where they are not needed.