3.0 - Query caching for \Cake\ORM\Table::get

I recently wanted to use query cache with wonderful `\Cake\ORM\Table::get` and found out, that it wasn't possible. Do you think something like this might be useful?

At first I was only considering this: https://github.com/sukihub/cakephp/compare/cakephp:3.0...sukihub:3.0-cacheable-get-v1 but having cache option available in find might be a little bit more useful.

I did not add test for `Query` class (`QueryTest::testApplyOptions`) since (1) the change there was trivial and (2) there is no easy way to check what's in `_cache` in `QueryTrait` other than actually "firing" the query with "real" cache. Should however work just fine. 

What do you think?
Oh, right. How about also renaming `$config` parameter and field to `$engine` (or possibly `$cacher`)? It would also make APIs for `get` and `find` little bit easier to understand:
```php
$table->get(10, ['cache' => [
    'key' => 'some_key', 
    'engine' => 'some_engine' // instead of 'config' => 'some_engine'
]]);
```