Add a broker

This is for @nchapman. This is the first Broker. See what you think!
I'm thinking it would be nice to figure out what kinds of data Brokers need and pass those into the constructor instead of it having to reach into `window` for random bits of data.