EventManager with GitIgnore Listener

EventManager with GitIgnore Listener.

Allows us to attach to events in certain classes. Implemented is a GitIgnore listener which will automatically add and remove entries to the `.gitignore` file when deploying

This is part 2 of #154 and should resolve the issue completely.