update .gitmodules and add .gitignore