Refactory event_emitter to use Map instead of Dictionary

**Ultimate Problem**
This library pulled in another library, `dictionary`, that didn't support Dart `1.7.2`. 

**Solution**
I refactored the event emitter to use the `Map` provided by Dart's core instead of `dictionary`. Dictionary mostly provided features around dealing with retrieving keys that didn't exist in the dictionary, which I replaced with a method that wraps key retrieval.