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
handling lack of fstab as not-error
added yaml dumper that renders OrderedDict to YAML map
added strick package name matching flag, skip_suggestions
code cleanup
DRY up minion event system initialization
DRY TCP_KEEPALIVE
DRY RECONNECT_IVL_MAX
DRY IPV4ONLY
DRY _fire_master minion start
DRY more self.socket.setsockopt