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.
You know, thinking about this, I would suggest that `front` be called inside of `popFront` and saved as a member variable. If you do that, then you can guarantee that only `popFront` will throw, and `front` can be guaranteed to return a valid value rather than having to throw when the last element results in an exception.