Using a constrained Name for namespaces names

This is in preparation of the `DirPath/FilePath` update.
There is still something about this test which doesn't feel right. I think its possible that a valid string can fail to parse, and this test won't catch it (im probably misreading it again).