minor
add missing constraint
totally hack up Iterable (and Map!) to make it pass the compiler