document Destroyable, Evented, Stateful, and sniff
Stateful: report changes to underscore props, but not to instance only props.

Leverages the _getProps() method to filter what PropertyListObserver reports.
Also changes that method to return a hash instead of an array.

Fixes #17, #22.