terraform: support graphing modules
terraform: add some helpers to ModuleDiff and InstanceDiff for UX
terraform: validation validates the submodules
terraform: clean up some functions
config/module: validate that required parameters are passed through