Reworked client code: DancingClient is now DancingClientReceiver, and
Dancer is DancingClientSender