HashKey#fetch behaves more similarly to native ruby (refs #118)

I've renamed the current fetch method to hget, and replaced any calls to the current fetch to hget.

I've made the new fetch accept additional arguments.  Either a default value, or a block.  To be more in line with Ruby.  

Otherwise it will behave like the current fetch method.

I've included some specs.