2
First of all - you can't use tree as files-source.
All (AFAIK) modules use single phisical path for storing added modules
If you'll separate upload area from download area and have real OS on server, you can rather easy automatically add new uploaded files to database with one short script (I think, I can write it even on bash+gawk mix, and sure - Perl-man do it on Perl).
You can't search in file content, only file names in Download area.