Would be interesting to experiment with: - reducing calls to clone (replace PathBuf with &Path) - writing a manual parser