recovery_email/resend_code does not need the email address
encode email as UTF-8 before key stretching and srp - fixes #274
Merge pull request #277 from zaach/fix_client_email_encoding

Fix client email encoding
update travis-ci to use new IRC channel
Refactor token classes to reduce duplication, improve API compliance

This implements the latest tweaks to the token derivation/encrytion
scheme, and uses the new level of symmetry between operations to support
a substantial refactor and cleanup.
Make SrpToken more like all the other token classes.
Make Bundle module export a single constructor.

This makes it more consistent with how other modules do things, even
though we don't create any Bundle objects.
Simplify mocking of Date.now in forgot_password_token tests.
Make SrpToken.prototype.tokenTypeID more consistent with other tokens
Use a single srpServer instance per SrpToken.

This also saves a bit of work at construction time, by deferring
calculation of the B value until it is actually needed.
Treat Bundle like a top-level module, rather than using "Token.Bundle.*"
Merge pull request #276 from mozilla/token-refactor

Refactor token classes
Change HKDF "info" parameter for some token derivations.
Merge pull request #282 from mozilla/token-hkdf-info-changes

Change HKDF "info" parameter for some token derivations.