Async app maker

The app maker will detect thenables and wait to resolve them before giving back an app.
`koast.makeExpressApp()` now returns a promise