command should be std::move-ed here otherwise we end up copying the parameter twice. Once for the pass by value copy and one for the copy constructor.

Note that, if I remember correctly, string are actually reference counted under g++ so the cost of a copy that's never modified should be fairly minimal. We should still fix this small issue.