Proper errors lookup

Instead of just checking for nil, now it checks for empty errors hash to say if there are errors.
I've got into this issue while using the `merge_errors` method, which adds an empty error hash before merging, which eventually will break the `has_errors?` method.