almost completed refactoring of data logic behind the FilterByMenuBuilder