Decrypted values can span multiple lines, even in string mode
Merge branch 'master' into sihil-dec-string-multiline
Re-factor the backend implementation

This is an attempt to get deep_merge's working, which are currently
throwing exceptons in my testing environment. See [this
issue](https://github.com/TomPoulton/hiera-eyaml/issues/65).

I copied the yaml_backend from hiera v1.2.1, which is the one used in
puppet v3.4.2, and injected the decryption mechanics. I also needed to
copy the `parse_answer` method from the `::Hiera::Backend` and modified
it to use the decryption aware version of `parse_string`. It's still an
unfortunately long implementation considering that the only real
difference between the eyaml backend and the yaml backend is the change
to `::Heira::Backend.parse_string` that allows it to process encrypted
values.

I feel like this backend could be trimmed down so that it inherits from
the yaml backend, but the issues with doing that are tricky enough to
solve that I'm not going to pursue it at this point.
Add configuration file to override any command line option
Add ability to provide own subject when creating certificates
Be more careful with the HOME directories during aruba tests
Need a file in the home directory to make sure it gets copied
Add docs and env var override
Fix up the msg to message and remove format call
Tag logs with "[hiera_backend]"
Added .ruby-version and .ruby-gemset to gitignore
Merge branch 'refactor_backend' of https://github.com/devin-c/hiera-eyaml into devin-c-refactor_backend
Merge branch 'sihil-dec-string-multiline' of https://github.com/sihil/hiera-eyaml into sihil-sihil-dec-string-multiline
Merge branch 'sihil-fix-key-subject' of https://github.com/sihil/hiera-eyaml into sihil-sihil-fix-key-subject
Merge branch 'sihil-fix-undefined-utils-warn' of https://github.com/sihil/hiera-eyaml into sihil-sihil-fix-undefined-utils-warn