feat(modules): add the sub generator for modules

Closes #11