fix menu builder to use recursive iterator and matcher classes