-extern Path fix_case(const Path &);
-extern int mkpath(const Path &, int);
-extern int rmdir(const Path &, bool =false);
-extern std::list<std::string> list_files(const Path &);
-extern bool exists(const Path &);
-extern Filename splitext(const std::string &);
-extern int fnmatch(const std::string &, const Path &);
+/// Removes the last component from the path.
+Path dirname(const Path &);
+
+/**
+Returns the base part of a filename. This includes everything up to the last
+dot, but not the dot itself.
+*/
+std::string basepart(const std::string &);