[WIP] route updates

# ReWrite of router
- simple routing
  - to clear up actionhero's simple routing (`/api/:action`), this logic is now moved into the router
  - simple routing can be disabled via `api.config.servers.web.simpleRouting`
- query routing
  - to clear up actionhero's query routing (`/?action=:action`), this logic is now optional via `api.config.servers.web.queryRouting`
- all parts of a url must match for a route to be activated and the same depth will be enforced
  - IE: `/api/thing/stuff` matches `{path: '/thing/:value', action: 'myAction'}` but will not match `{path: '/thing', action: 'myOtherAction'}`
- you can no longer request a file with a query param, ie: `/public?file=simple.html`.  The URL path must math the file system path (from `/public`)
- when the action provided by a user is not found, we will simply return the error 'unknown action or invalid apiVersion'
  - the `action` will not be assumed via the URL
- documentation removed from a default `/` route, and moved to an action (revert)
  - documentation action included in new project generator

## Backwards Incompatibility
- There are 2 new options in `/config/servers/web.js`
  - simpleRouting
  - queryRouting
- `api.config.servers.web.returnErrorCodes` now defaults to `true`