Some moderate error handling on creation functions