Make either::{partition, flip, to_result} take their arguments by-value

Addresses an XXX

r=pcwalton