Remus worker now doesn't need a separate inter process context.

We now use custom zmq pair channels whose names are stringified uuid's so
that we can have an unlimited number of workers sharing the same context.
Delay construction of zmq::contexts for as long as possible.

zmq::contexts context creation is not cheap, and are not cleaned up quickly.
So if you need a large amount of remus::Workers inside the same process space
you don't want any code creating and releasing File Descriptors. Which is exactly
what the old Server Connection would do. Even if you are using a ServerConnection
in a shared manner, you would still create a temp context each time you shared
the context causing some serious issues.
Merge pull request #188 from robertmaynard/better_context_usage

Better context usage