Falling back to `:native` for the merge behavior is the right behavior, but I think this is introducing test failures (https://travis-ci.org/puppetlabs/hiera/jobs/5823971#L215). This implementation means that there's no way to leave deep merging on for the purposes of testing. This means means that unit tests around deep merging either have to be disabled if the deep_merge gem isn't installed, we have to mock out `require` (which is incredibly dangerous) or this needs to be extracted out. If this was extracted into a method then this could simply be stubbed out for the purposes of tests.