fixup! we shouldn't be returning error if the function takes a response channel
fix #302. Should be able to set negative times
fix the sleep since the process takes about 5 seconds to startup
add some logging
fix time stamp rounding when we create a new shard
make sure that a shard endtime is exclusive when we search for shards range

note: this is hard to test since the shards will only return points in
the given range, so even if we use more shards than we're supposed to
the returned points will not be outside the query range. The only way to
test this is to write a unit test.
fix #321. Fix a off-by-one bug in the splitting algo

The algorithm that splits the data to multiple shards had an off-by-one
bug that caused one point from the next shard to be included in the
current shard.