Changed when/node call to a simple function call

This fixes #489 by calling the `before` and `after` configuration hooks normally and plugging their returned promise in `when.all()` if needed instead of using `when/node` which expects the hooks to call a passed callback function.

I'm guessing the `when/node` behaviour is not desired according to the docs.

This also fixes #488 where the roots object was passed to the hooks via `this` instead of the first argument.