Added hashmap and hashset templated containers.

These new container templates are similar to densemap and denseset,
except that they assume the key and the hashcode are the same thing.
This is useful when data is pre-hashed. denseset is useful for
mapping handles/keys to array offsets that correspond to the offset
of the hashed key in the denseset.
Improvements to s-expr parser and GLEW integration.

Added string/identifier unescaping functions for s-expression
lexer/parser tokens. Added missing peek/read/expect parser
functions. Furthermore, added a string localization table for
the parser error/warning messages (it still needs some more
work).

The OpenGL Extension Wrangler was also integrated into the Upcaste
repository, and a library target added for it.