Adds ability to pass a salt into PasswordValidatorInterface::isValid

Salt might be necessary in the UpgradeValidator.
Fixes a bug that always set $legacySalt = null
Corrected example/proof-of-concept of @karptonite's "Rehashing Password Hashes"

Now with salty goodness!

See Daniel Karp's comment here: http://jeremykendall.net/2014/01/04/php-password-hashing-a-dead-simple-implementation/#comment-1382769545
and his blog post here: http://karptonite.com/2014/05/11/rehashing-password-hashes/