implement Stream#read!(id).
allow calling read! multiple times with same id. this is to tolerate cached web environments, no big deal.
a Stream now has an id (usually the user's id). this is passed on to the Notification, which will be where persisted notifications are made.
make Broadcast#[]= the only method to push messages on a channel.
privatize BC#channel.
start work on a Redis backend for Stream.