Do not attempt to save placeholders that are already saved.
Refactored code, moved generic classes out of core module.
Implemented Eventful module.
Fixed event bubbling and attaching callbacks to all events.