Started the overhaul of transfer handling.

I'm getting random disconnects while working with large files. I'm not sure why yet. I have quite a few places where things get swallowed quietly, and I think we're hitting some sort of 'abort', most likely from a synchronization issue. :-/