Add block to indifferent access #fetch

The #fetch method from IndifferentAccess did not pass a block to the
underlaying method which resulted in a KeyError on e.g.

    indifferent_hash.fetch(:key) {|key| 'default value' }

This fix captures the block and passes it to the underlaying fetch
method that yields if the key cannot be found.