refactored namespace autoloader