Fixed a bug when deactivating add curly brackets refactoring

Extracted an interface for PreferenceHelper for loose coupling.
Loose coupling: introduced JavaProjectOptions

Introduced JavaProjectOptions and JavaProjectOptionsImpl to reduce coupling with Eclipse APIs and increase code coherency.
Used them everywhere instead of passing in destructured values.