Merge streamed-execution branch

This is a change I found was nessacary.  Without it execution segements were being queued up.  
The tests pass so if it's required then we don't have a test that exercises it.  If we need it back in then I may need to create an alternative drain method