Cześć. Wygląda ciekawie.
Tak się zastanawiam, czemu nie composer? Trzymaj się standardów PSR-4.
@include_once($className.".class.php");
Czemu wyciszasz błędy? Niech rzuci wyjątkiem jak klasy nie ma, a tak to później nie będzie wiadomo gdzie błąd jest. Przecież na produkcji i tak display_errors jest off a logi errorów trafiają do pliku. Zawsze możesz zrobić warunek na sprawdzenie czy plik istnieje przed wczytaniem, nie istnieje? throw new FileNotFoundException
Z tego co słyszałem, zmienne w formacie camelCase się piszę :)
ModuleLoader.class.php - Twiga podepnij ;)