Starting to refactor ResultSet to make buffering the default
Implemented result buffering inside ResultSet
Taking buffering config in consideration inside ResultSet
Making result buffering the default
Enabling ResultSet to be rewound
Implemented Collection::first() and renaming one() to first() everywhere
Making ResultSet::first() return the first result if it was buffered, it
makes no sense to return null if we have the value already
Removed ResultCollectionTrait as it had no use after the recent refactor
Using first() in matchFirst
Fixing problems found in code review
A more explicit test case
Merge pull request #2563 from cakephp/3.0-buffered-as-default

3.0 buffered as default