Add/closeio

Here's an integration of close.io. 

A few things to note:
- The integration requires the presence of an email for an identify(..), group(..), or track(..) call.
- When identify(..) is called, I first query for the Lead, which is the parent of a Contact, by using the user's email. If that query doesn't return a result, I then query the Close.io Lead endpoint for the company name. If there is a result from the company name query, I create a contact representing that user under that company.
- When group(..) is called, I query for the group using an email address.

Ok, that should do it. Let me know what I can improve on in this integration.
Regarding Julian's comments above, yes to the `Array.prototype.some` being better than reduce. But no regarding the caching. `settings` aren't cached based on changes in integrations, plus are project specific and not user specific. We shouldn't put stuff into `settings` other than what gets passed in by the system.