Commit 69c01a1485403cd188ff57df15e508e87fec2b34

Con Kolivas 2013-10-01T14:40:30

Use asynchronous transfers for all bulk transfers, allowing us to use our own timers and cancelling transfers that take too long.