module dependencies, some documentation draft