Change Batch(), use TPL, return Task/Task<T>, #100
Merge pull request #102 from DistributedNonsense/feature/BatchTPL

Change Batch(), use TPL, return Task/Task<T>, #100