Templatized string.hpp on basic_string.

I would be better off converting everything to utf8 in the long run.