Remove all strdup calls, and replace std::string with QStrings

Parsers still leak memory, but much less now.