convert default_scope to use blocks

Rails 4.2 only supports `default_scope` with a block.  Rails 3.2 also
supports `default_scope` with a block, so this converts all of our
default scopes to use blocks.  This way our default scopes will work on
3.2 and 4.2
construct the group object before `where` is mocked

constructing the group object will call the default scope to get the
default values for the instance.  Calling the default scope will call
`where` with parameters that the mock doesn't handle, so we should
construct the object first
Merge pull request #1259 from tenderlove/default_scope

convert default_scope to use blocks