Fixed issue with StringRefactoring

"String s = expr1.toString() + expr2.toString()" cannot be refactored to "String s = expr1 + expr2" when expr1 and expr2 are not Strings.
Fixed the code + added unit tests.
Ensured AggregateASTVisitor calls preVisit2() from the AbstractRefactoring class.