Updated plats to implement the observer pattern.

Only one event emitted right now: before_cast