fix content-length for .body re-assignment

```
this.body = 'hello'
this.body = fs.createStream('file');
```

this will mess up the content length.

also fix `this.response.length`. they are related, so i put them in one PR.