(RE-1040) Support building gems on Windows

This commit makes it possible to execute the packaging repo task `package:gem` on Windows, and have it create both the generic and platform-specific Puppet gems. This supercedes https://github.com/puppetlabs/packaging/pull/259.

You will need `git` and `msys` in your path to account for things like `mktemp`
ruby magic of course! rspec has a [predicate matchers](https://www.relishapp.com/rspec/rspec-expectations/v/2-11/docs/built-in-matchers/predicate-matchers), so if the receiver has a predicate `foo?`, you can do `expect(receiver).to be_foo` and it will automagically do the right thing. The reason for doing that is because the error message is more descriptive than if you just do, `expect(receiver.foo?).to be_true`