Implement RFC 027 File Verification

This implements user-suppliable file content verification per RFC
027. Users can supply a block, string, or symbol to the `verify`
resource attribute.  Blocks will be called, string will be executed as
shell commands (respecting the same options as not_if and only_if), and
symbols can be used to access built-in registered validations.
Can you re-use descendants_tracker.rb here?  

https://github.com/opscode/chef/blob/master/lib/chef/mixin/descendants_tracker.rb

You may have to scan all of its descendants and send them all a klass::provides?(:noop) message, but hopefully you're doing that only when a verification is called, and hopefully there's only a dozen or so verifications and not thousands...  The benefit of descendants_tracker is that you re-use some pretty well tested code from activesupport, the downside is that you have to scan every time and can't ask the hash to return the :noop handler.