handle: A Range that handles an Exception

When a Exception occurs inside a range chaining the whole chain dies usually. The Handle range fixes that, as it catches a defined exception and calls an user defined handler on it.
The previous comment I had here is gone now that you made changes, so sorry if you're already working on this, and this is redundant, but in case you missed it, I'll point it out again.

But please change it so that `popFront` saves `input.front` as a member and `front` just returns that member. That way, all of the exception catching can go in `popFront`, and `front` won't ever ever have to throw because `input.popFront` kept throwing exceptions until it ran out of elements.