Refactor the project:
- Remove FindBugs use
- Create structure that are convenient to implement hill-climbing
improvement