Don't crash when using getting an unset description
Return correct results from as_tag_to_string()
Use GQuarks for matching tag string to AsTag enums

The strcmp()s were both slow and inelegant.
trivial: Remove three compiler warnings from clang