This change creates a struct type for namespaces rather than using a string. This enables us to extend namespaces in the future to contain metadata. This change also required renaming other field references of namespaces to "NamespaceName". Fixes #99