Making authentication algorithms pluggable with tests.