Save TWebCopy to MemoryStream or StringList

Please add the ability to save WebCopy Downloads to a TMemoryStream or a TStringList. Only one stream or stringlist should be needed. Add a TargetStream and TargetStringList to the WebCopy->Data structure. Two new event handlers WebCopy1StreamDone and WebCopy1StringListDone for processing the stream or stringlist after each download is needed. This has many advantages such making sure secure downloads are never saved to the hard drive. It should also be faster than saving and opening a file for processing.

Idea#1
TMemoryStream *s = new TMemoryStream;

WebCopy1->Items->Clear();
TWebCopyItem *Data1 = WebCopy1->Items->Add();
Data1->URL = "MyDomain.com";
Data1->TargetStream = s

WebCopy1->Execute();

void __fastcall TForm1::WebCopy1StreamDone(TObject *Sender, TMemoryStream *s, int DownloadCount)
{
//After each download process Stream here.
//Clear the Stream for the next download
s->Clear();
}

Idea#2
TStringList* SL = new TStringList;

WebCopy1->Items->Clear();
TWebCopyItem *Data1 = WebCopy1->Items->Add();
Data1->URL = "MyDomain.com";
Data1->TargetStringList = SL

WebCopy1->Execute();

void __fastcall TForm1::WebCopy1StringListDone(TObject Sender, TStringList SL, int DownloadCount)
{
//After each download process StringList here.
//Clear the StringList for the next download
SL->Clear();
}