Make the Model class's attribute private.

We're going to start making subclasses of this, and I don't want to
worry about name collisions.
Model: make __subscriptions a defaultdict.

This lets us simplify the code for adding a subscriber.
Model: allow subscribing to keys.

This isn't well tested, but it at least doesn't break the example app.
Merge pull request #7 from zenhack/key-subscriptions

Key subscriptions