Support for multiple route handlers

Adds support for multiple route handlers on the form route.get(path, fn1, fn2, .., fnN) where only fnN receives the next generator. The previous fns are yielded synchronous to the fnN but asynchronous to each other. They can be used to perform auxiliary duties such as validating user permissions.

Allows for:

```javascript
function* permissionCheck (name) {
  if (name != 'Hallas') this.throw(403);
}
route.get('/path/:name', permissionCheck, function* (name) {
  this.body = 'Hello ' + name;
});
```