Listenable is now dispatcher
- App does not inherit from Listenable, now uses a $dispatcher object