add support for multiple engines

rename compilers to engines (and engine can compile and render, a
compiler can only do the former)

remove `.catch`es from test.coffee (let the error propagate when it hits
`.done` for better stack traces)

simplify compiler initalization a little by using a single constructor
defined in the base Adapter

add some more docs
add yade support
note potental failure
update docs to say "engine"
update docs in adapter_base
update docs with lists of methods

...rather than a paragraph describing which ones it supports
Make clientHelpers return a promise
reorder properties in adapter
add isolated attribute to adapters
add jobLog for recording performance stuff & deps
add pid to logged info
move requireEngine into Adapter as a private func
add yade to adapter/engine map
remove error rethrow
add customPath to jobLog
make `resolvePath` work with symlinked folders

not an ideal solution...
rename customPath to enginePath and document it
switch from @engine.__accord_path to @enginePath
add todo
add config-schema