+/**
+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 &);
+
+/**
+Returns the extension part of a filename. This includes the last dot and
+everything after it.
+*/
+std::string extpart(const std::string &);