-Complete refactor of code:
--Should now be compatible with all types, not just pointer types
--Now conforms more closely (but not entirely) to the interfaces of std::map, etc
--Far more maintainable, as there is only one map type now with no template specializations
--Bug fixes, interface improvements, across-the-board improvements all over.
-Added some test code to quickly test changes and ensure nothing is broken.