Improve test coverage for oae-authentication

api.js:

- [ ] Execute loginIdExists with a validation error
- [ ] Execute associateLoginId with user that doesn't exist
- [ ] Execute changePassword by someone who isn't admin or the user for who the password is being changed
- [ ] Execute changePassword by someone who doesn't have a local login strategy user id
- [ ] Execute checkPassword with a validation error
- [ ] Execute getUserIdFromLoginId with a validation error

rest.js

- [ ] Can we call /api/auth/google and check that this forwards to Google?
- [ ] Can we call /api/auth/twitter and check that this forwards to Twitter?
- [ ] Can we call /api/auth/facebook and check that this forwards to Facebook?
- [ ] Test a failed password change through the global admin
- [ ] Execute /api/auth/exists with no username