implemented autoloader based on namespaces