moved all dependencies to submodules