Result filtering on search (also known as Partial Search)

First take at refactoring search to allow selective results, rather than returning the whole thing.
Instead of copy paste one technique is to use `shared_examples` and `shared_context`. 

An example is here: 

https://github.com/opscode/chef/blob/master/spec/support/shared/functional/file_resource.rb#L18-L24
https://github.com/opscode/chef/blob/master/spec/support/shared/functional/file_resource.rb#L48-L55
https://github.com/opscode/chef/blob/master/spec/support/shared/functional/file_resource.rb#L59
https://github.com/opscode/chef/blob/master/spec/support/shared/functional/file_resource.rb#L243

We can chat about this more :smile: