Add API for adding new / editing existing emoji

- `Emoji.create(raw)` => yields to block
- `Emoji.edit_emoji(emoji)` => yields to block

The block forms are so that the list of aliases & unicode_aliases is re-indexed after the update.

Supersedes #45

/cc @josh @aroben @djfpaagman
Not sure what you mean. Creating the emoji for the same Unicode representation multiple times? It won't remove the previous Emoji::Character instance from the list, but then again I'm not sure if we need such behavior at all.