Sass client support + promise based processors

- [ ] Ready for merge

Also re-implement client side stylus (ref #902).

Also optimised the render process, so if the source hasn't changed, then the compile process is ignored.

Todo:

- [ ] Server side support
- [ ] Reinstate stylus server side
- [ ] Ensure processors run in `childProcess.fork` to protect parent
- [ ] Investigate `@import` support