- Change Alloc to be a Write with a callback that exposes the WritableBuffer. This allows the ISocketOutput to implementation to not call the callback if the underlying socket is dead. - Added a new functional test