Fix argument parsing bugs in handling of `A` packet.
Add an option to force lldb-compat mode.

This is required when we want to expose some lldb-specific behavior
before we got a chance to detect we were actually talking to an LLDB
remote (e.g.: when running some tests from the lldb test suite).
Allow launch without command line or target pid when in lldb compat mode.

LLDB expects the remote debug server to accept the `A` command (which
sets the program arguments) outside of platform mode, which means we
have to be able to launch the debug server and wait for that command
even when no target program is specified.
Log a message if a packet checksum is invalid.