Add basic extension API to Medium Editor

I'm currently looking to integrate Medium Editor into our product. Aside from the basic editing we also need the ability to highlight parts of the text. Since is not possible with the [browser API](https://developer.mozilla.org/de/docs/Rich-Text_Editing_in_Mozilla) Medium Editor uses this needs to be implemented "outside". It's clearly not the goal of Medium Editor to support all kinds of advanced editing (after all, we have `contenteditable`) but sometimes it's nice if you can simply add such things yourself.

Since I want to maintain the ability to benefit from bug fixes and upgrades to Medium Editor without the need to maintain a fork I choose to slightly modify the Editor core to support "extensions". The API and the changes to the core are very minimal but it's a *I personally* need for now. I also fixed a bug in one of the tests as a drive-by. 

If the changes don't fit your liking or you think the API is to minimal, please let me know. I would really like to see an "extension API" added to the editor (one way or another).

Below are some screenshots on the end result (based on the example code I put in the README).

![selected](https://cloud.githubusercontent.com/assets/70785/2588912/975f7c40-ba43-11e3-84a7-00f8b50eedfd.png)
![toggled](https://cloud.githubusercontent.com/assets/70785/2588911/975ec4bc-ba43-11e3-95bf-41b206364c45.png)
![highlight](https://cloud.githubusercontent.com/assets/70785/2588913/97619656-ba43-11e3-95c9-2f5d240d6b5b.png)