Add Validation::uploadedFile()

Add a simple wraper function for the various file validation methods.
This method makes it easier to wrap up the various file validators into
one method.

Refs #4456
Make uploadError() and uploadedFile() accept missing files.

This makes validating forms where there is an optional file much easier.
Make missing files pass validation when optional flag is used.
Remove RouteCollection::addExtensions().

RouteCollection::extensions() can now be used to add/set extensions.
Remove Router::parseExtensions().

Router::extensions() can now be used to add/set extensions.
Better method signatures for Routing.
Correct wording.
Correct doc block.
Update tests.
Update reference to removed method.
Update docblock.
Unify the name of the variables representing a table name in the Schema system methods
Re-add Router::parseExtensions() for easy migration.

Using it will trigger a warning.
Merge pull request #4527 from HavokInspiration/3.0-schema-tablename-vars

Unifying variable names representing a table name in the Schema system
Merge pull request #4524 from cakephp/validation-upload-file

Validation upload file
Working on removing the dependency from Core in Utility
Adding a Readme and a composer.json for the Utility namespace
Revert array $options argument to boolean $merge in routing classes.
Merge pull request #4525 from cakephp/3.0-router-extensions

3.0 router extensions
Removing the usage of Cake\Core\Exception in Security class

Replaced it with InvalidArgumentException