Adds hiera key lookup

Reimplements lookup methods to allow them to accep
a block.

resolve two data_mapping compile issues

1. If the hiera value was false, it did not retrieve the
value correctly (b/c it did not distinguish between
nil and false keys)
2. It was returning the interpolated string even when there was
no interpolation.