bugfix: std::copy not memcpy, so push_back(std::string) works;  add member back()