Any callable can be used as an observer as long as the callable can be
called with the single event parameter or without argument at all.
When adding an observer, you can specify the method to be called on the
observer to receive the event.
Implementation changes: Using a type hierarchy instead of
a type flag for the different types of observers.
http://code.google.com/p/neo-observer/source/detail?r=97afe015cbae
Modified:
/neo_observer.py
/test_neo_observer.py