[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.
should probably note here that state will be automatically set to the resolved value, calling `setState` is just for additional state related to the async operation.