sockets.tcp - redirect to file for Android and iOS

- set `destUri` to non-empty string will open outputStream
- set `destUrl` to empty string will close outputStream
- `close` and `disconnect` will close outputStream
- ~~`readyToRead` is not set to `false` after sending receive event~~ `readToRead` is ignored for redirect to file
- Fixed some style issues from other code reviews
I think the desktop `chrome.sockets.*.update` only update the fields existed in the properties parameters and keeps other properties unchanged.