Add support for non-PNG assets

This adds support for having custom emojis that aren't PNG files. In other words - you can now have animated GIFs.

Usage:

```ruby
emoji = Emoji.create("music") do |char|
  char.set_format "gif"
end

emoji.image_filename # => "music.gif"
```
Maybe change that to `subdirectory/my_emoji.gif` to demonstrate that you can both add directory paths as well as change the extension