Added git hook and git hooking-in script to automate source formatting for changed files, added source formatting configurations (if you change one, please change both), and added some more ignore files to the gitignore