Merge branch 'maint/master/fix-printing-version' by pcarlisle
This fixes up my previous change to handle the --version option better, by
allowing applications to override it when required.
This, sadly, also revealed that my have_printed rspec matcher was a bit
buggy at the edges - so includes my rewrite to have that be more robust.