BooleanRefactoring: always add parentheses around expressions

Let other more specialized refactorings remove unneeded parentheses.
BooleanRefactoring: Fixed a bug + added more tests