don't bother sending empty reading list
fix HttpClient leak, run http tasks in executor