title: Multiple 'having' clauses blows up Rails 3 / Arel
body: <p>I think I've found a bug in Rails 3 / Arel, but I'm hoping someone can clarify my problem before I try and fix it and/or submit a bug report.</p>
  
  <ul>
  <li>On a very simple app, with a Question model: (submitter_id: integer, option_count: integer)</li>
  </ul>
  
  <p>The code that I'm using:</p>
  
  <pre><code>q = Question.where(:submitter_id =&gt; 1)
  q = q.having(['option_sum &gt; ?', 5])
  q = q.having(['option_sum &lt; ?', 10])
  q = q.select("#{Question.table_name}.*, MAX(#{Question.table_name}.option_count) AS option_sum")
  q.to_sql
  q
  </code></pre>
  
  <p>This blows up with:</p>
  
  <pre><code>ArgumentError: wrong number of arguments (2 for 1)
  from ~/.rvm/gems/ruby-1.9.2-p0/bundler/gems/arel-f092ae544f58/lib/arel/select_manager.rb:94:in `having'
  from ~/.rvm/gems/ruby-1.9.2-p0/bundler/gems/rails-76053fe4d12b/activerecord/lib/active_record/relation/query_methods.rb:193:in `build_arel'
  from ~/.rvm/gems/ruby-1.9.2-p0/bundler/gems/rails-76053fe4d12b/activerecord/lib/active_record/relation/query_methods.rb:162:in `arel'
  </code></pre>
  
  <p>Taking out one of the 'having' clauses fixes the issue, and generates the proper SQL.</p>
  
  <p>Any comments would be appreciated. Arel and Rails 3 are edge versions, with revisions as listed in the error above.</p>