add base interface OttoBus, have Bus implement it.

Creating a base interface allows instances of classes that act like a Bus but aren't a Bus (e.g. ScopedBus) to be passed around as a standard interface.  To minimize disruption to existing code, I left the name of the Bus class alone and named the interface OttoBus.