A better require statement

Closes issue #430 with a PR