def extract_conditions!(options = {})
      order      = normalize_order(options.delete(:order))
      limit      = options.delete(:limit)
      offset     = options.delete(:offset)
      conditions = options.delete(:conditions) || options

      [conditions, order, limit, offset]
    end
def extract_conditions!(options = {})
      order      = normalize_order(options.delete(:order))
      limit      = options.delete(:limit)
      offset     = options.delete(:offset)
      conditions = options.delete(:conditions) || options

      [conditions, order, limit, offset]
    end
given an options hash,
 with optional :conditions, :order, :limit and :offset keys,
 returns conditions, normalized order, limit and offset