fix some crap dependencies and stablish proper hierarchy for all modules