Api routes

Allows for extending the API verbs to arrays which contain parameterized sub-routes, example:

```
  // Handle GET method
  'GET': [
    {
      path: 'default',
      controller: 'users',
      fn: 'getUser'
    },
    {
      path: 'login/:id/test/:username',
      controller: 'users',
      fn: 'loginUser'
    },
    {
      path: 'test/route',
      controller: 'users',
      fn: 'getUser'
    }
  ],

  // Handle POST method
  'POST': {
    controller: 'users',
    fn: 'createUser'
  },
...
```

The methods called then have access to any matched params via `req.params.NAME`