Work on memory, removed std::list from internal implementation, vector still in use since people can choose to not use it.  Considering moving std::strings to const char*
Replacing std::string with const char* where applicable, part of my better control over memory strategy