Improve Packet appending on Strings.

By using STL, for operator <<, we can let std::copy choose between
memmove or memcpy. (cc
http://stackoverflow.com/questions/4415910/memcpy-vs-memmove)
For assigning the string when we get data.
Using std::string::assign and std::char_traits::length, it's more
simpler to read.