Use the existing pubkey for the sign in payload

Rather than making a temp file to save out the public key just to read
it back in to give to the master for sign in, we can just read the
existing public key file that was just created.
include msgpack in thin.tgz

While msgpack is an extmod (it uses an platform-dependent .so) it
includes a pure python fallback.  Including it in thin will not create
a protability problem.
Preserve stdout, stderr and retcode from salt-ssh raw command

salt-ssh raw mode only emits stdout lines; it emits neither stderr nor
the return code.  salt-ssh raw works more like cmd.run rather than
cmd.run_all.  Preserving stdout, stderr and the return code are
imperative for validating the results of a salt-ssh raw command.

This stores 'stdout', 'stderr' and 'retcode' in the ret dictionary so
that the complete information can be emitted by the outputter.

Fixes #10432
Appease the pylint gods.

Fixes #10432
Test fixes
Add self._running to the ProxyMinion
Changed pendflag and succedent flag to segment flag and pending ack flag so semantics changed
Merge pull request #10645 from rallytime/mac_user_test

Test fixes
Group SSH auth options together; make consistent in formatting
Merge pull request #10649 from cro/proxy_add_running

Add self._running to the ProxyMinion
ZMQ topics

Salt targeting is done using the zmq pub/sub mechanism. No filtering is done so all requests go to all minions. This is an attempt to make the requests more target-able. ZeroMQ supports filters on these sockets which are processed publisher side. So the thought is to set it to the minion id and a shared "broadcast" one. Only requests of tgt_type == list will use this. The thought is if we like this we can use other data (mine etc) to determine a more specific target on the master (such as a list) from a glob match etc.

Syndication masters do not have zmq filters applied, but will send out their syndicated requests with a filter as well. So all targeted messages aren't gauranteed to go to only the minion, its just best effort
Pylint fixes.
Merge pull request #10650 from cro/pylint_fixes_0221

Pylint fixes.
more mac_user tests
Rewrite environ modules
Merge pull request #10651 from rallytime/mac_user_test

more mac_user tests
[salt] add volume commands to nova
[salt] add nova.volume_attach and detach
Add more caution to the clear_all option docs
Fix typo in environ module documentation