Bring basic_path into line with std::string - remove concat(), add full op/ and comparisions as non-member functions with all overloads, supply member and non-member swap