depend on master for certain gems on Rails 4.1

the minitest addition was to get around this error:
```
Warning: you should require 'minitest/autorun' instead.
Warning: or add 'gem "minitest"' before 'require "minitest/autorun"'
`scoped` -> `where(nil)` for Rails 4.1
Rails 4.1 compatibility: ActiveSupport Callbacks

they simply have less public methods for us to use
fix SQL syntax error

```sql
SELECT COUNT(title, count(*) as nb_posts) AS
count_title_count_all_as_nb_posts, title AS title FROM "posts"  GROUP
BY title
```
Devise master doesn't set up its secret key on Rails 4.1

https://github.com/plataformatec/devise/issues/2554
don't gsub the Devise initializer before it exists
remove a `rm` for a folder no longer created at all
set up secret key for 'cucumber' Rails env
AA Comments: use the standard `self.table_name =`
update Rails 4.1 dependencies in Gemfile & README
halfway solution for minitest / shoulda-matchers

The `Warning: you should require 'minitest/autorun' instead.` error
doesn’t actually stop the tests from running, so I think we can live
with it for now. thoughtbot/shoulda-matchers#434 resolves the error,
but the currently unresolved thoughtbot/shoulda-matchers#473 prevents
us from just using master.
ignore `select` clause inside `collection_size`

Rails 4.1 doesn’t handle multiple `select` arguments well when calling
`count`. This:

```ruby
User.select(:id, :name).count
```

Results in:

```sql
select count(id, name) from users;
```

This is an update to 908a12bf1829085c82f5053b1266044276fc6840
add pry to the Gemfile because it's awesome :heart:
use shoulda-matchers from master
allow failures on Rails 4.1.0; add back 4.0.4 for now
Merge pull request #3063 from seanlinsley/test/4.1

Get the test suite passing on Rails 4.1