@certik's favorite kind of exception-handling.  I am not going to specify all the five million and one ways this code could fail, but I will happily accept a pull request against this branch that does so :)