Add support for USERcycle

This commit adds support for USERcycle using its REST API (documented at http://docs.usercycle.com)

Note that the alias call is not implemented, since USERcycle only supports one user id per user in the database.

I've tested this successfully using the supplied test and a USERcycle account and everything seems to be working fine, including our A/B tests (which use a nested object for passing the test name and active branch).

Let me know if there's anything you like to be changed, otherwise we're happy if this can be pulled upstream soon (we have a few customers waiting).

Thanks! :)