match data in puppet ${::fact} style to get rid of puppet deprecation warnings
Add default config to hiera

When run on its own, hiera depends on having a config file present. It expects
/etc/hiera.yaml to exist. This commit adds a default config file to hiera, and
adds the config file to the packages for hiera.
Merge pull request #66 from haus/add_default_hiera_config

Add default config to hiera
(#12122) Correctly fall through backends during loop

When calling lookup for hash or array types Hiera would incorrectly return an
empty result from a backend that did not find a value instead of checking the
next backend. This happened because the empty hash and empty array were used
internally to represent a failed lookup. This changes it to use nil
everywhere. A distinct sentinel value would be ideal, but since Hiera
currently has no way to communicate to the outside world the difference
between lookup up nil and a failed lookup, it is sufficient to use nil internally.
(#12122) Merge arrays and hashes across backends

This implements merging for arrays and hashes across the returned values for
all backends, using the same logic as merging within a backend.
Merge pull request #68 from pcarlisle/ticket/master/12122-multiple-backends

Ticket/master/12122 multiple backends
(#14867) Add windows support

Without this patch Hiera does not work on Windows and fails with the
following error:

    Failed to start Hiera: RuntimeError: Config file /etc/hiera.yaml not
    found

Following the standard set by the Puppet installer, Hiera now uses the
following configuration and var directories on Windows:

    C:\ProgramData\PuppetLabs\hiera\etc
    C:\ProgramData\PuppetLabs\hiera\var

This patch introduces a new `Hiera::Util` module which utilizes the
`win32-dir` gem for locating the correct base directories on Windows.
Add specs for Hiera::Util
Use File::ALT_SEPARATOR to test platform
(maint) Fix failing Hiera::Util specs

This patch makes it easier to test the `Hiera::Util` module.
Merge pull request #70 from kelseyhightower/feature/1.0rc/add_windows_support

(#14867) Add windows support
Remove datadir value in hiera.yaml

The fully qualified path in hiera.yaml for the datadir works well in linux
installs, but fails in Windows installs. As hiera will fall back to sane
defaults, the datadir can be commented out and still work.
Merge pull request #72 from haus/update_hiera_yaml

Comment out datadir in hiera.yaml
Merge pull request #29 from timurbatyrshin/puppet-style

match data in puppet ${::fact} style to get rid of puppet deprecation warnings
(maint) Hiera now has a LICENSE file

Hiera has always been licensed under the ASL2. This patch makes that
easier to find by adding a "License" section to the README, and a new
LICENSE file.

* ASL2 - Apache License, Version 2.0
Merge pull request #74 from kelseyhightower/maint/1.0rc/hiera_does_not_have_license_file

(maint) Hiera now has a LICENSE file
(#15105) Update README YAML examples

The Syck YAML Parser in Ruby 1.9.x requires that values like this:

    %{location}

Are quoted like this:

   "%{location}"
Merge remote-tracking branch 'origin/1.0rc' into 1.x

* origin/1.0rc:
  (#15105) Update README YAML examples
  (maint) Hiera now has a LICENSE file
  Remove datadir value in hiera.yaml
  (maint) Fix failing Hiera::Util specs
  Use File::ALT_SEPARATOR to test platform
  Add specs for Hiera::Util
  (#14867) Add windows support
  (#12122) Merge arrays and hashes across backends
  (#12122) Correctly fall through backends during loop
  Add default config to hiera
  match data in puppet ${::fact} style to get rid of puppet deprecation warnings