added Person.authenticate