Placing the event Model.beforeFind in ORM\Query::sql()

This will help getting the correct SQL after all behaviors have
added their changes to the queries even when debugging it or
using it in other queries as an expression.
Fixing bug where beforeFind was being triggered for delete queries
Configure::read('App.wwwRoot') in camelBack.
Fix tests
Query transformation should happen after beforeFind is triggered
Added test to prove that using translate behavior and union queries now works
Fixed a couple local problems with order of results in mysql tests
Merge branch '3.0' into 3.0-reliable-beforefind

Conflicts:
	src/Database/Connection.php
Fix forms with 24hr datetime inputs being blackholed.

Omit the meridian picker from the secured fields if the form has a 24
hour format hour picker.

Refs #5105
Let Folder class create files recursively to avoid errors.
Fixed typo
Fixed error in postgres where fields from translate where injected for a count query
Fixed CS error
Fix failing test.

meridian is no longer secured by default as the default hour format is
24 hrs.
Merge pull request #5128 from cakephp/3.0-folder

Let Folder class create files recursively to avoid errors.
Merge pull request #5118 from cakephp/3.0-reliable-beforefind

3.0 reliable beforefind
Merge pull request #5122 from cakephp/meridian-security-component

Fix forms with 24hr datetime inputs being blackholed.
Merge pull request #5116 from cakephp/3.0-webroot

Configure::read('App.wwwRoot')
Fix up API docs.
Stop fatal errors when _joinData is present and not an entity.

If _joinData is set to an array property it should not cause failures
when attempting to save. Array values should be converted into entities
elsewhere in the process.

Refs #5130