Something to think about is module IDs. How are modules distinguished?
tree6fe73dfb9edf3b5de1e7c1ea44c8aab4fc3b60a7
-rw-r--r-- 60 .aesalon.conf
-rw-r--r-- 339 .gitignore
-rw-r--r-- 35068 LICENSE
-rw-r--r-- 2140 SConstruct
lrwxrwxrwx 21 aesalon -> monitor/build/aesalon
drwxr-xr-x - build
drwxr-xr-x - doc
drwxr-xr-x - include
drwxr-xr-x - modules
drwxr-xr-x - monitor
-rwxr-xr-x 2845 newsource.pl
drwxr-xr-x - tests