Adds order to the test models to make the results more predictable.

Even though there was some code in place to prevent results in random
order from PostgreSQL we were still experiencing this with Jenkins
and Travis.

This commit removes the old code that handled this. From now on this
will be handled differently. Every test model will order by its
primary key. You can disable this by changing the order property
of the model to `null`: `$testModel->order = null`.
Use ModelValidator::count() to count dynamiclly added validation rules
Update webroot files to fix an issue in ServerShell.

The previous fixes done in 2918ae9c7ab86208be25d5652d94c14685c59faa
caused other issues preventing actions from being dispatched properly.

Fixes #3934
Add failing test for #3930
Throw exceptions when '' is used as translation domain.

'' is never a good translation domain and often indicates developer
error. Treat it as a mistake and throw an exception.

Fixes #3939
Fix FileEngine not clearing keys when groups are used.

Fixes #3930
Added return before redirects

As recommended by the Cookbook:
http://book.cakephp.org/2.0/en/development/testing.html#testing-controllers

> When testing actions that contain redirect() and other code following the redirect it is generally a good idea to return when redirecting. The reason for this, is that redirect() is mocked in testing, and does not exit like normal. And instead of your code exiting, it will continue to run code following the redirect.
Merge pull request #1458 from ravage84/patch-2

Added return before redirects
Added missing calls to setUp & tearDown in tests
Removed unused setup & teardown methods from MyAppSchema in CakeSchemaTest
Merge pull request #1459 from ravage84/teardown

Added missing calls to setUp & teardown in tests
Merge pull request #1460 from ravage84/cakeschematest-setup+teardown

Removed unused setup & teardown methods
Docblock and return type fixes
Don't need to check for empty because Model::validator() returns an interator
Add for required fields when using only ModelValidator::add()
Fix whitespace
Merge pull request #1461 from thegallagher/master

Required fields not recognised by FormHelper when only using ModelValidator::add()
Make sure ComponentCollection has the controller dependency.

Add setter method as changing ComponentCollection's constructor now is
not possible. This fixes issues where components that rely on
Collection->getController() in their constructor can work properly.

Fixes #3946
Fix double printing of models in ConsoleShell.

Fixes #3952
Fix errors in ConsoleShell.

The switch statement was failing to evaluate conditions properly and
always attempted to run the bind command.