move consumer interface to extended view model
Abstract SearchAlgorithm instead of interface