First implementation of minimal Broker API

There might be use cases where binding multiple handlers to the same event is valid. If it complicates the impl, we can do this once the use case pops up.