more menu improvements

now that i get iterators more, i'm rewriting a few functions to be more
readable