Chef 12 bootstrap cleanup

* Cleans up deprecations for Chef 12
* Implements the encryted data bag secret distribution based on [this](https://gist.github.com/sersut/94c8daad5c11369bd2e8) 
* Simplifies the bootstrap CLI options slightly.

@opscode/client-engineers wanted to share this before increasing the spec coverage around these options. 

Remaining work:

* [x] Moar specs.
* [ ] End to End bootstrap testing
* [ ] CHANGELOG and RELEASE_NOTES updates.
I think `config[:bootstrap_template]` will be set with the value of `Chef::Config[:knife][:bootstrap_template]` when not overridden by command line option, so we should only need this: `config[:bootstrap_template] || config[:distro] || config[:template_file]` here.