Made hapi support asynchronous template engines like blade

This required restructuring view Manager.render() and _get() to return
their results asynchronously.

Added two new flags to the views section of server options:
asyncCompile -- set to true if the template engine compiles asynchronously
asyncRender -- set to true if the template engine renders asynchronously

Blade.js is an example of a template engine that does both asynchronously.
jazz is an engine that compiles synchronously & renders async.

To make blade layouts work, added a new option to the "views" options
section. Set `layoutFile` to the name of the layout file you wish to
use, with suffix appropriate for your layout engine. The default is
"layout.html", so existing hapi layout code continues to work.

This isn't generalized enough, since you'll want to be able to override
layouts on the fly for some pages, but it's a start.

Updated all the unit tests to get their results from render() in a
callback instead of as a return value. I believe this is an
implementation detail that shouldn't end up exposed to the application
level, but I don't know the code base well enough to be sure yet.

Added unit tests specific to the async template compilation & rendering
code paths. 100% test coverage exists according to blanket & travis.

Added blade to the dev dependencies.