broadcast and subscription administration

Adds channel administration:

* `element.broadcastChannel` lists the channel name
* `element.setBroadcastChannel(str)` sets the outbound channel name

* `element.subscriptions` is an array of channel/listener pairs
* `element.setSubscription(channel, listener)` adds a new channel/listener pair, or updates an existing one based on listener
* `element.removeSubscription(channel, listener)` removes a subscription.