The top-level spreadsort function has specific overloads targeting std::string and std::wstring specifically. With C++17 around the corner, these overloads could also accept std::string_view and std::wstring_view when they are available.
It notably helps std::string_view to be more of a "drop-in replacement for std::string" as much as possible.
By the way, is string_spread_sort also intended to sort collections of std::vector<char> or std::deque<char>, or is it not suited for these cases?