Like Array.prototype.filter, given a test function, a passing Some(value) can
pass through or be turned into a None() if
test(value) is false-y.
I really wonder if there is a reason besides lack of motivation that other
option types don't seem to implement this method. It has come up quite
frequently on code I've worked with.