Refactor Router's `_dispatch()` method to take `req` and `res` objects

Previously, router would create the `req` and `res` object inside its
`_dispatch()` method and pass them along to the route handlers. Now the
`_dispatch()` method takes `req` and `res` objects allowing the places
that call the method a chance to create and massage these objects how
they need.
Add reference to `router` and current `route` on Router's `req` objects
Move `_regexURL` into router.js from pjax-base.js where it's used

In a previous refactor of Router and Pjax, the `_regexURL` prototype
property was never moved into Router from Pjax.
Add more Router tests for expanded `req` object and _dispatch() refactor
Add `req.app` property which references the app for Y.App instances
Update Router's and App's change HISTORY for req dispatch refactor
Update Router's docs for `req.src === 'dispatch'`
Merge branch 'router-req' into dev-3.x

Conflicts:
	src/app/HISTORY.md
	src/app/js/router.js
Build App, Router, and Pjax