Correctly represent valid file names
Currently we use RawFilePath to represent file names in git, for example to entryName in TreeEntry:
data TreeEntry = Entry {
44 entryName :: RawFilePath
45 , entryMode :: Mode
46 } deriving (Eq, Show, Read)
I believe, for example, that entryName can not contain '\NUL,' or maybe even '/'.
We should check what the rules are, and if appropriate make a wrapper type containing the validation.