3.0 - Query caching for \Cake\ORM\Table::get (updated)

Support for query cache in `\Cake\ORM\Table::get`, based on discussion in https://github.com/cakephp/cakephp/pull/4815

The duplication in `TableTest` bothers me a little bit (`testGet` and `testGetWithCache`), but I did not refactor it, since I did not find how you usually deal with it (there are only `test*` methods in the class).
Why not just actually hit the database? The mocks aren't really adding much here.