Add autoreject_file support to minion authentication

This commit adds support for a file similar to autosign_file, which can
be used to automatically reject minions which match the expressions
inside it.
prepend root_dir to autoreject_file
Add autoreject_file to master config template
Add autoreject_file to master config file documentation

Included a versionadded directive to note when this was added, to reduce
confusion.
First attempt at abstracting ZeroMQ communication.
Add pillar.show_top function
pillar.show_top needs to be a runner, not a module function
Add salt.utils.minions.get_grains function
Properly fetch the pillar top based on a specific minion
Complete abstraction of ZeroMQ.
Revise get_grains to salt.utils.minions.get_minion_data

The function now takes `opts` and returns both grains and pillar data
Use the new get_minion_data function
Print the output for the pillar.show_top runner
Normalize return data for libcloud queries
Switch all cloud providers to use standard list_nodes_select
Update libcloudfuncs to properly handle conn
Update docs for list_nodes_select()
Merge pull request #9275 from techhat/selectquery

Switch all cloud providers to use standard list_nodes_select()
Merge pull request #9276 from syphernl/develop

Add process username and status fields to ps.top output
White-space lint related fix