Micro-opt'ed some parse cache code.
Redesigned the directory parser code. Solved an issue with module naming that had a different package name given explicitly via a module statement than the one deduced from the physical directory. Dunno if huge performance improvements.