Bug Fixes and Optimizations

Implemented S3FileSystem.doCloseCommunicationLink() so that transferManager gets cleaned up and doesn't leave worker threads running.

Fixed doListChildren() and doListChildrenResolved() to not choke when the initialize list is truncated because subsequent requests did not set the prefix.

Improved efficiency of doListChildren() and doListChildrenResolved() by using delimiter in addition to prefix to limit the response to only immediate children instead of post-filtering the response.