def search_keywords(*keywords)
      params = keywords.last.is_a?(Hash) ? keywords.pop : {:SearchIndex => :Books, :ResponseGroup => :Medium}
      response = call(params.merge(:Operation => :ItemSearch, :Keywords => keywords.join(' ')))
      arrayfy(response['ItemSearchResponse']['Items']['Item']).map {|item| handle_type(item, :item)}