This makes lookup much faster and allows for shorter code.
This is necessary, because when we have multiple DoABCTags, and the first uses symbols from the second, then we may not execute the first DoABCTags's entry script before declaring the symbols from the second.
as in spec
ASStrings are allowed to hold an \0 character at any position, so we cannot use c-string methods like strlen and such.
Looked like a hack
toplevel: Use glib's ASCII string functions so we aren't dependent on locale
Saves RAM by not keeping the full stream in memory.