Add heuristic mutation.
Implement diversity management based on hashes.
Merge branch 'master' into hga

Conflicts:
	modules/solver/src/main/java/com/akavrt/csp/solver/genetic/Population.java
Fix bug with repeated rolls in heuristic mutation.
Add several implementations of heuristic mutation.
Add tournament-based constraint handling.
Add group replacement mutation operator.
Add local search operator to GA.

Local search operator is applied to the best solution found at the
end of the run. It based on a simple refining scheme with group
replcament (works similar to a single step of basic SHP).
Add several implementations of ES.
Rearrange EA-related classes.
Remove a few series from 'analyze' tab in desktop app.
Merge branch 'hga'