load balancer fixes

Fixes #14 .

A few changes made here:

* The `LoadBalancingClient` now properly binds itself as a worker item for its shared interface.  No more duplicated logic
* Made some fixes around how worker items are bound and did some refactoring.

I will probably be opening another PR shortly that addresses some of the todo's I mention here.