+ routing: add Directive that allows a query param to override the request http method

Added the `methodOverrideParameter ` Directive which changes the HTTP method of the request to the value of the specified query string parameter. If the specified query string parameter is not set or is set as something that is not a HTTP method, this directive has no effect.

This directive is useful for:

 * Use in combination with JSONP (JSONP only supports GET)
 * Supporting older browsers that lack support for certain HTTP methods. E.g. IE8 does not support PATCH