remove FirmUtil.createGraph(...) and added GraphBuilder instead.
splitted FirmTypesUtil.createMethodParameters(Method, firm.ClassType) into Firm.createMethodParameters(Method, firm.ClassType) and Firm.createStaticMethodParameters(Method)
Changed collection type of Method.getParameters() from Iterable to List.
Changed type of AstNodeVisitorDFS.combine from BiFunction to BinaryOperator and used some method references instead of lambdas.
Removed AstNodeVisitorDFS constructor parameter BinaryOperator and used abstract method instead.
Changed type of Iterable  fields and parameters to Collection or List (dependend on what is useful). There is no good reason to use Iterable instead of Collection.
Formatting and beautifications
AstNodeVisitorDFS: used streams instead of for-loops to reduce AstNodes
AstNodeVisitorDFS: extends from AstNodeVisitorDefault
ast: small refractorings
PrettyPrinter: refractorings