feature: merge std(err && out) logs and tidy logic of stdio

Final chapters:
- Merge std(err && out) logs, fixes #807 
- Tidy logic of stdio (waterfall)
- Disconnect `child_process` graceful/peaceful, with some node vers, the `child_process` does not disconnect immediately even if it is dumped, maybe it is the GC strategy, so currently we should close the spawned process at once since the `_reloadLogs` event is being triggered, it may fixes the following problems:
  - Log lag
  - Log gets lost
  - Useless `EventEmitter.on`
  - Too many `stdio`s are piping stream to a specific file at once (most of them are useless)
  - ...  
- Fix some small bugs 

Test cases of **merge std(err && out) logs** coverage
```
start(cluster/fork)
restart
reload
graceful(Restart/Reload...)
reloadLogs
flush
describe(desc/info)
logs
jlist(prettylist)
startJSON
```