add .gitignore and some minor update