HttpClient: Refactor timeout into two seperate functions
datasources: Add support for specifying multiple datasources

If multiple sources are specified, the first available source is used.
Merge pull request #164 from crawford/datasources

datasources: Add support for specifying multiple datasources