Hmm; clever, using Hash#reject to maintain compatibility with 1.8 and 1.9.

It seems that 1.9 has consistent behavior between Hash#select and Hash#reject ... once we upgrade to 1.9, I would probably use ips.select {} for clarity.

Maybe add a TODO that we should change to select once we switch to 1.9?