Rewrote the tests for has_secure_password
Restored the ability to clear the password with user.password= nil (see the docs)
Got all the new tests passing
Removed old tests
Some minor fixes
Merge pull request #13772 from chancancode/fix_has_secure_password_for_good

Refactored validations rules for has_secure_password