making the chef-zero host configurable for knife and chef-client
Merge branch 'CHEF-5228'
Added two lines so changes in the environment variables are can be used in the same chef-run that sets them

These two lines add or remove environment variables from the Ruby ENV
object, so that right after setting the new variables you can use them
in later steps in the same chef run. Without these lines you need a
second chef run if preceding steps depend on the newly added variables.
Added unit tests to test new behaviour
Refactored the spec tests to make things a little cleaner

Used a double instead of a custom class
Merge branch 'CHEF-5174'
added open_timeout to http connection
add tests for chef/http/basic_client
Merge branch 'CHEF-5152'
Raise exception when using apt package with source
CHEF-5113: Add a unit test
Release notes for CHEF-5113, CHEF-5152, CHEF-5174, CHEF-5228