Implemented SSO for OpenMRS Helpdesk

Here is the implementation of SSO for OpenMRS Helpdesk.

1. As there is some issues about creating accounts of my local code, I used a mockup sso.js. I just modified the part of `authenticate`, here it goes.

 ```
authenticate: function authenticate(req, res, next, strategy) {
var route = url.parse(req.url)

    if (global.__mockupUser) { // Forward to endpoint

      var loginString = strategy.validator(req, global.__mockupUser);

      console.log('LOGIN STRING', loginString)

      res.redirect(loginString)

    } else { // Log in the user

      var user = {};
      user[u.username] = "Tom";
      user[u.email]    = "foo@bar.com";
      user[u.displayname] = "John Doe";
      global.__mockupUser = user;

      return res.redirect(route.pathname);
}
},
 ```

2. Usage
Using Multipass
**Enable It**

 1. For deskcom site
    + Log in to the Desk.com Administrator and go to “Support Center” on the “Channels” tab.
    + Select “Private Access” and select “Multipass” from “Authentication Method”
    + Set the Login URL as `https://%HOSTNAME%/login/authenticate/deskcom
    + Additionaly you can enable logout, by setting Logout URL as an arbitray one that you want users to be redirected to
    + Check `Require HMAC` and `Random IV`
    + Generate a Multipass Key, if you don't have one   
  Click “Update”

 2. For conf.json
   See conf.example.json, change `apiKey`, `siteKey` and `maxMinute` to meet your disire.
   Specifically, the `siteKey` is the subdomain of your deskcom site. e.g. If your site's domain is `tom.desk.com` then the siteKey will be `tom`