submodules are only useful if the upstream repo is not deleted
some code cleanup