failure much more gracefully, as well as implement a few new needed features. Check it out! Submitted by: Marc van Kempen <wmbfmk@urc.tue.nl>