def resolve(name, *args, &block)
      strategy = @strategies.find do |strategy|
        valid?(strategy, name, *args, &block)
      end

      build(strategy, name, *args, &block)
    end
def resolve(name, *args, &block)
      strategy = @strategies.find do |strategy|
        valid?(strategy, name, *args, &block)
      end

      build(strategy, name, *args, &block)
    end
Attempt to determine the intent of the method_missing. If this method
 returns nil, that means one of two things:

 1. The argument signature is invalid.
 2. The name of the method called is not valid (ex. invalid column name)