Use a scope by default on a Rails has_many relationship
===

Let's say I have the following classes

    class Foo < ActiveRecord::Base
      has_many :bars
    end

    class Bar < ActiveRecord::Base
      scope :baz, where('fizz > ?', 5).order('buzz DESC')
    end

`Bar` has a a scope `baz` and `Foo` `has_many :bars`. I would like to define my has_many relationship so that when I ask `foo` for all associated `bars`, the `baz` scope is automatically applied. Essentially, I would like `foo.bars == foo.bars.baz`.

Requirements
------------

- I do **not** want to change `scope :baz` in `Bar` to

 `default_scope where('fizz > ?', 5).order('buzz ASC')`

- I'd also like to prevent duplication by not having to add to `Foo`

 `has_many :bars, :conditions => ['fizz > ?', 5], :order => 'buzz ASC'`

Goal
----

I'd like to  have something like

`has_many :bars, :with_scope => :baz`