added submodules to perform different spark tasks to make things a bit more composable.