WIP - 3.0 - Connection prefix

As mentionned in #3843, a fresh start to implement the connection prefix feature.
At this point, this commit puts the PR back to the state it was, but with an up to date Cake 3.0 version (and better managed branches on my side)

Refs #2666 and #4118 

To do :
- Update Schema system so it takes into account the connection prefix (if any)
- Maybe update the \ORM\Table class (I have a written note about that on my desk, so I guess "past me" put the finger on something I may have forgotten)
- Make Fixtures apply connection prefixes

I'll probably have some questions about testing with / without a prefix and making the fixtures apply the prefix. I know I got stuck on something regarding this but can't exactly remember what. I'll dive in this again and ask you as they come up.
Interresting.
I guess, in a way, the prefixing could be done only in the QueryCompiler (well, at first glance, it should be possible). This way the prefixing would only be done if the query is compiled, which would optimize the process as if the query is never compiled, there would be less work done for nothing. It would also concentrate all the prefixing at one place, which would be easier to maintain.

I don't know if you meant this but I'm convinced :smile:.

I will probably finish my update for the having clause and branch my current work to try this.
This will require a lot of change though. The TableNameExpression might even be useless.