Enhanced command line, unix socket & rake tasks

I think we have been using the convention of passing in `&block` as a parameter and using `block.call` instead of `yield`.