support for hierarchical module naming schemes

@geimer: this should fix the problem that's blocking you right now

I might need to figure out one more thing w.r.t. the devel module name before this really works for you, I'm looking into that...
Yes, it can be a simple `dict`, i.e. when the module name for dependencies or toolchain is being determined (which is also why we need a fallback procedure).