Ma small refactor

WIP: thinking about how to break up this class. 
Started with breaking large methods down into smaller methods.
That's cool.  I haven't seen #fetch before.  Does it behave the same if params happens not to be a hash?