refactor(hasNameSpace): allow module names using a dot-delimited namespace

Allows module namespaces to use dot delimiters in addition to camel case, making `my.app` a valid namespace.

Additionally, `my` is a valid module name if and only if it depends on another module with the `my.` prefix.

Closes #21