Fix various bugs around handling of disconnect in JsonIOStream and JsonMessageChannel.
Fix handling of DAP "terminated" event in debug.Session.
Add --ptvsd-logs and --pydevd-logs switches to pytest.
Improve message logging to fully capture the raw message data in the logs if deserialization fails.
Log all debuggee environment variables in debug.Session, and improve log readability.
* Fix#1090: Port refactored command line parser to master
* Fix#921: Double dash in program arguments gets caught and crashes pydevd
* Fix#1013: -h/--help arg to program instead shows help for interpreter
* Add new JSON IPC implementation to be shared between the product and the tests.
Add pytest-based test support, and wire it up to setup.py and Travis.
Dial pylint down to complain about important things only.
Various minor fixes exposed by pylint.
Add basic .vscode/settings.json for linter settings (and anything else that's workspace-specific).
Fixes#831.