external libraries as submodules