integrate minion health checking and caching.

This is #508, rebased onto master after LGTM from lavalamp and myself.

Closes #508