Allow hyphens in namespaces.

Signed-off-by: Matthew Riley <mattdr@google.com>
Only allow embedded hyphens. Add more tests.

Signed-off-by: Matthew Riley <mattdr@google.com>
s/hexidecimal/hexadecimal/

Signed-off-by: Matthew Riley <mattdr@google.com>
Also prohibit consecutive underscores

Signed-off-by: Matthew Riley <mattdr@google.com>