Cleaning up error handling

Also making require so you can pass it a list of names, for brevity.