refactor module namespacing

nesting modules will result in less errors when using non-fully qualified constant names