Add autoIncrement flag to integer & biginteger columns.

When using composite primary keys we can't just guess at which column
should be the autoincrement one. Instead we should allow the developer
to specify which one is the auto-incrementing/serial column.
Add 'autoIncrement' support to MySQL.

Add reflection and generation support for the autoIncrement property in
MySQL. This helps improve composite primary key support as composite
keys with one AUTO_INCREMENT column can now be created.
Reformat long line.
Sqlite composite primary key support.

SQLite does not support autoincrement/serial on composite keys. Add reflection for the new autoIncrement, property.
There is no matching generation feature as SQLite does not support this kind of table generation.
Add tests for autoIncrement in column generation for MySQL.
Fix composite key generation in Postgres

Two columns cannot be serial in postgres. If there is more than one column in a primary key don't flag both of them as
SERIAL. Instead users can use autoIncrement = true to manually flag the serial column.
Merge pull request #2590 from cakephp/3.0-composite-key-generation

3.0 composite key generation
Start integrating the yet unwritten QueryCacher into ORM\Query.

I figure that caching query results is separate enough from building
& executing queries that a separate object is justified. Having
a separate object will make writing tests much simpler as well.
Add skeletons for QueryCacher & related test.
Fix issue with CacheRegistry related to mocks.

When a mock returns null for the init() method, no fatal error should be
emitted.
Implement the QueryCacher class.

While basic it would confuse and pollute ORM\Query if it lived there.
Making this class a decorator would also complicate the external use of
Query so I didn't want to go down that road either.
Integrate cache writes to Query & add tests..

Once we have a result set we can cache it and return it. Ensure that
cache reads and writes happen. Don't write to the cache when we read
data from the cache. This might result in infinitely cached data.