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.
Always give saltenv argument highest priority
Clean up ready for new code
A roadmap on what we're going to attempt here.
Proof of concept version
Abstract as much as possible in to a class that doesn't rely on querying the database, to make testing less painful.
Fixes for late night coding bugs
Sort keyword args so that the tests are saner.
Test cases
Support for coercing dicts to lists.

Specify fields to be hit with dict.values()
Fixes for config, pep8 and ext_pillar
Proper docs
More refactoring and filling out
Added new nacl interface library
added some tests
Merge remote-tracking branch 'upstream/develop' into sam_2014_02_03
start ot add test
Be sure not to loose any var in case of multi macro inheritance
Adds master module
Caches loading of modules
Use environment for archive.extracted. Fixes #10324.