Jdmundrawala/windows env path

Fixes issues: 
https://github.com/opscode/chef/issues/2016 
https://github.com/opscode/chef/issues/2009

Includes changes from/Should replace:
https://github.com/opscode/chef/pull/1876
This uses the windows api instead of find/replace and I've added functional tests
okay, i see, nothing other than 0.chr gives a single-byte null...  that is really annoying of ruby...