Better highlighting of character literals

Did you know that $\7 == 7, but $\8 == 56?
Fix highlighting of range types
Make ellipsis in types a keyword
Fix highlighting functions whose names are defined by a macro
Add scope meta.function-clause.erlang