wip: Add rest api

Close #29
Implements #30 
"depend on presence of callback" callback is always passed

sometimes-async... when is it not async?

If we know response right away, we next tick the callback, if we don't know a response, the handler is responsible for calling back when it can.

It seems straight forward to me, probably because I wrote it and use the pattern everywhere I use the control channel:
- https://github.com/strongloop/strong-supervisor/blob/master/lib/runctl.js#L80
- https://github.com/strongloop/strong-supervisor/blob/master/lib/targetctl.js#L43

but if you have some specific suggestions, go for it.