Refactor: libcrmcommon,etc.: convenience functions for string tables
A simple hash table of dynamically allocated strings is the most common type in
the code base. This adds convenience functions for regular and case-insensitive
table creation, which makes the code less ugly, hopefully without sacrificing
readability.
As a side effect, this gets rid of a lot of usage of g_hash_destroy_str() when
we only need free().