updates to genetic, user can choose algorithms to run