add submodules and Makefile