Batch client and requests refactor

Needs testing - and more work on the actual client batching system