Adding .gitignore.

Ignoring class files, project specific preferences.
Updating for encapsulation.
Adding suggestions for code