[#71587328] Updating service-webhooks and adding TeamSnap support

This adds updates to the service-webhooks project and adds support for the TeamSnap integration.

This pull request is dependent on:
https://github.com/AllPlayers/allplayers-mainline/pull/3912
https://github.com/drupalprojects/resque/pull/1
https://github.com/mattsqd/allplayers-api/tree/75815340-Partner_mapping_7-25-14
Also not a blocker, but having this amount of different paths in a function introduces unnecessary complexity and becomes more difficult to maintain and test, so changing this design to a more object oriented approach like using classes with the strategy pattern might be better. http://en.wikipedia.org/wiki/Strategy_pattern

So in this case you would have something like:
```php
interface WebhookType {
   public function process($data) {
   }
   public function processResponse($response, $data) {
   }
}

class CreateGroupWebhook {
   public function process($data) {
   }
   public function processResponse($response, $data) {
       // Notice I'm referencing a class that doesn't exist because another comment I have is the createpartnermap function should not be in the Webhook class but rather in its own class.
       $partner_map = new PartnerMap(self::PARTNER_MAP_GROUP);
       $partner_map->createPartnerMap(
          $response['team']['id],
          $data['group']['uuid'],
          $data['group']['uuid']
      );
   }
}

// And then eliminate the switch statement altogether by calling
$type = new $original_data['webhook_type'];
$type->processResponse($response, $data);