(PUP-1282) Express Windows specific gem dependencies

Previously, if a ruby module on windows tried to use puppet as a
library, the calling module had to know about puppet's platform specific
dependencies. This comes up when trying to develop and test puppet
modules on windows.

This commit adds the windows specific gems to project_data.yaml, and
updates the Gemfile to add these dependencies when during
bundle install

The build pipeline will automatically create an x86-mingw32 gem in
addition to the generic one.
(PUP-1282) Allow patch version float on windows dependencies

This loosens the version dependency of the windows specific gems a bit
to allow for floating on the patch part of the version number. This
allows better compatibility as future updates are made to dependency
versions.
Merge pull request #2283 from ferventcoder/issue/master/PUP1282-windows_gem_dependencies

(PUP-1282) Express Windows specific gem dependencies
(PUP-1484) Fix serialization of TagSet

The TagSet class didn't include FormatSupport and didn't have a
to_data_hash method, so it couldn't be serialized to msgpack.
Merge branch 'pull-2287'

This closes GH-2287
Merge branch 'master' of https://github.com/puppetlabs/puppet