Adds FindBugs to project
Adds verbose solving

Also a lot of refactoring, moving classes and introducing an object
parameter