better error guards

Let's document this in the README.