Use symlink while uploading multiple versions of cookbooks.
Merge pull request #1023 from opscode/OC-9475

CHEF-4426 - knife cookbook upload doesn't work on windows when working with :versioned_cookbooks
[CHEF-4567] Rename Chef::Resource::SmartOSPackage to Chef::Resource::SmartosPackage

The `Chef::Resource::SmartOSPackage` resource is expanded to `smart_o_s_package` by Chef when loading the class. This makes the DSL method a bit confusing as it should be `smartos_package`.
Provide backwards compatability for the old class name
[CHEF-4561] Add :write as a valid action to the log resource
CHEF-4534 Fix restart_service if..else syntax in upstart provider
[CHEF-4529]

backup filename minutely.

backup filename minutely.

Fix: fail on 1.8.7

code cleanup
Update ui.rb

the temp file gets written as a .js, it should be a .json
[CHEF-4513] HTTPS proxy not set (wget only) using HTTPS to download the Omnibus installer.
Moved Chef::Recipe#tag into the Chef::Node object
CHEF-4482 : change user attribute comparison to string compares
[CHEF-4477] Fix typos in autogenerated readmes
[CHEF-4471] Add Windows 8.1/2012 R2 to Windows version helper
CHEF-4469 Allow installing packages from Jumpstart share

A common case in the world of Solaris is one where there is a Jumpstart boot+install server on the network. This, by definition, offers up the Solaris media in the form of an NFS share where each installable SysV package is exploded already into its own directory.

For example, SUNWntpr (the NTP "Root" package)

```
client% ls /net/pompeii/Solaris_10/Product/SUNWntpr
archive/  install/  pkginfo  pkgmap  reloc/
client%
```

This patch to the Solaris package provider detects if the 'source' (required attribute when using Solaris package provider) is a directory and acts differently if so. It allows the following to work in this scenario (where it does not currently):

```
package 'SUNWntpr' do
  source '/net/pompeii/Solaris_10/Product'
end
```

Prior to this, package installation from an 'exploded' package directory would not work no matter what crazy package name + source location I constructed. pkgadd would barf.
[CHEF-4343] Only test master, 10-stable, and 11-stable branches on Travis
Fixed issue with freebsd package provider current_installed_version

The regular expression that was being used to determine the installed version
would get tripped up when the package name included regular expression
characters.  EX: bonnie++

Since the package_name string is available using slice to extract the version
string from pkg_info avoids regular expressions complexity.
Fixed issue with freebsd package provider port_path.

port_path was also using a regular expression that didn't handle +'s in the
package_name.  Changed this to use split to avoid any issues with package_name
that contains any regular expression characters.
rspec tests to cover CHEF-4371
Per review changed both instances of the code in question to regexs
MDADM provider:  Don't pass chunk size for mirrors

Mirros don't use chunk size.  MDADM ignores it currently, but Chef
really shouldn't be passing it.  It's easy enough to avoid.