[added] Router.AsyncState mixin

This is just a start on the work needed to eventually support server-side rendering (see #57). The other things needed are:

1) A `renderRoutesToString(routes, path)` method
2) Actually mixing this in to `Route` (or a `RouteHandler` mixin, see #65)

Ideally we can merge these pieces one at a time and make a release when they're all ready.
hmm, maybe we should bring in sinon or something else to fake timers.