Fix .gitignore again, update project to use java 7, and add reflection helper class