(#19955) Give better error msg when Hiera databindings fail.

If a problem occurs while hiera databindings tries to look something up
(bad hiera.yaml, bad data, or indeed bad implementaton), the raised error
ended up as a Puppet::ParseError blaming a manifest with a cryptic error
message.

This changes this to throw a specific error if DataBinding raises an
exception when its find method is called.

It now points to which databinding terminus is in use, what the exception
class and original message was. It then fails the compilation using a
Puppet::Error.