rewrote the broker for performance; added round-robin strategy; added unsubscribing and resubscribing (no tests yet)