some tiny comment phrasing cleanups
add more illustrative example for char_to_unified
move pattern match for padded_hex_string into arg

this should have the benefit of guarding by only allowing the function
to be called with a single utf-8 codepoint as an arg, instead of
producing a MatchError in the body of the function if something else
was passed.

in practice this never happens because its a private function I only
use in one place above, but it feels right
simplify from_short_name

and add a test for better sanity checking on secondary keywords
implement EmojiChar.codepoints
update funcs to use new codepoint_ids alias

shortens up some code
add license to readme
fix mix docs.release task to clean docs dir first

otherwise if its sitting around from a manual `mix docs`, it won’t
clone properly with the proper git remote branch
consistent argument var name
better way of handling default option lists?

doesnt create two entries in exdoc at least
reference correct function in comments
use Keyword.get instead of pattern matching

As per discussion with josevalim in IRC, this is safer because it won’t
die if use passes an empty options keyword list.
move char/unified conversion into precompiled Util module

madness? THIS IS SPARTA
use new codepoint_ids function to shorten up defs

don’t actually need to define variants first for `char_to_unified`
because unlike `Scanner.bscan/1`, this is matching against an entire
binary rather than just head, so no need to worry about similar out of
order issues.