Return non-zero exit status when gatherkeys fails

http://tracker.ceph.com/issues/10043

Raise an exception that causes an exit code of 1 to be returned when a call to gatherkeys fails.

I have one concern with the way I implemented this -- the command itself seems to be able to handle being given a list of monitors to check.  However, with this change, the command will abort/exit as soon as a single keyring file is not found.  It's unclear to me whether that's the way it should be.  I had explained my reasoning in the tracker, but now I'm not so sure.

I could instead have the exception be thrown at the very end only if the keys couldn't be found anywhere.  I took the approach I did because i thought it would be an error if any monitor did not have any the required keyring files.
are those double curly brackets on `hostname` ? Is that intentional?