chore(tests): persistent login tests are no longer fragile

The persistent login component unit tests were failing when run close to
the border between seconds on the clock because ElggCookie::setExpiresTime
depends on the current time. I refactored to allow injecting a mock
strtotime() in the persistent login.

Fixes #6829