only call shutdownWrite() when there is no expectedSize

Groove Basin interprets the shutdown as aborting the request.

It might also be problematic to call shutdownWrite() in the case when there is no expectedSize. For that case we might be forced to use chunked encoding.