The password live validation was not considering the full password complexity settings. This branch hooks that up and refactors the various ways to validate a password to all go through the same code path. LEARNER-4502 LEARNER-4504