Updated client to support enrollment date ranges

* Added support for enrollment date ranges
* Added TimeoutError to Client
* 100% test coverage!
Sorry, my question was more about what happens if for example I ask for data from 2014-01-01 to 2014-10-31, but the database only has data for 2014-05-01 to 2014-07-01. Will it return an error, or will it return just that data between 05-01 and 07-01.