add functionality to detect required modules
Merge branch 'feature/detect-required-modules'