refactor pro zobecnenej solver

(aby šlo do fištrona elegantně přidávat další optimializační metody
(jako jsou mravenci))