split up the inputs function

Seperate the existing "give me all inputs for the current model" logic
from the "give me a fieldset, with these fields in it" logic.
remove irrelevant comment
better description
Don't mix tabs and spaces on the same line.
Implement implementedEvents on all core components.

This saves the cost of doing reflection on each request. Because the
core components don't need any RAD affordances we can hardcode the
callback listeners and get a tiny performance increase.
Hacky first/incomplete implementation of extending existing filters.

The renames to middleware still need to happen, but my gut feeling is
that there isn't anything seriously broken with how filters work right
now beyond the configration bits.
Add docs for features that are coming soon.
Add very basic test for DispatcherFactory.
Start test cases for middleware.
Implement matches() and add in progress test cases.
Implement remaining tests for DispatcherFilter.
Mark broken tests as incomplete and remove dead code.
Make priority a configuration value.

Default to the property (which is now protected) but allow users of
a filter to redefine the priority.
Add tests for RoutingFilter.
Remove old filter tests, and update asset dispatcher tests.
Move AssetDispatcher tests to correct test file.
Move CacheDispatcher tests into their own file.
Clean up remaining dispatcher tests.

Clean up the remaining dispatcher tests and try to cover the bulk of the
cases.
Add string filter support.

Like many other places in CakePHP we should allow string classnames for
filters, and let the framework handle construction for simple cases.
Remove additionalParams and update RequestActionTrait tests.

The additionalParams parameter isn't very useful as it simply gets
merged into the request later on. We can easily do that earlier in the
process now.

Fix incorrectlty dispatched array based requestAction() calls. They were
going back through Router::parse() when they did not need to.