Namespace management inspired by angular.module