Added batch option for write_points

This PR allows for a batched write operation.

I was noticing that, when I was trying to push many points at once, I was getting connection Errors.

I added a batch_size parameter to the client.write_points function that creates a generator to split the points into sets of points that then are sent to the write_points_with_precision function.