Using a constrained Name for namespaces names

This is in preparation of the `DirPath/FilePath` update.
It seems to me this is only used to convert `Dictionary` to `ThriftDictionary` when running a MR job. So I assume that the original dictionary has been properly parsed first. Now if we start using this conversion method to read a user-passed `ThriftDictionary` we'll probably need to add some more general validation anyway.