[Chef 11 compat] Vendor `chef/solr_query/*` classes

These classes have been removed as of Chef 11. We will vendor the files
from Chef 10.x and only add them to the load path if running in Chef
Solo 11+.
[Chef 11 compat] Install `treetop` gem using chef_gem resource.
[Chef 11 compat] search and data_bag methods now live in `Chef::DSL::DataQuery`

These methods were previously located in `Chef::Mixin::Language`.

Additionally re-organize library code by creating a "search" subfolder
for override module and parser.
Don't rely on the JSON libraries magic `json_class` field.

Let's instantiate actual instances of `Chef::Node` and `Chef::Role`
objects using the `json_create` method that all Chef object classes
share.