Thread safe support
Merge pull request #463 from billychan/replace-class-variables

Thread safe support
Add option to order by number of matching tags.

- Adds :order_by_matching_tag_count to tagged_with method
Merge pull request #469 from ExamTime/master

Featured added: Option to order by number of matching tags.
Let '.count' work when tagged_with is accompanied by a group clause
Merge pull request #417 from okgrow/fix-group-by

Fix: Let '.count' work when tagged_with is accompanied by a group clause
Move Deistinct out of select string.
Merge pull request #461 from developer88/master

Fix : Move 'Distinct' out of select string and use .uniq instead
Fixed down migration index name
Merge pull request #473 from gerard-leijdekkers/master

FIX: Corrected migration index typo
add indexes to schema.rb so they will be available in specs
adding using_mysql? to utils so we have a quiz method for each db type.  Also added a quiz method for case insensitive collation.  Its important to know when testing case sensitivity.
adjusted specs to account for the unique index on tag.name.

Some case sensitive specs are not able to run on mysql because the default is case insensitive collation.  This combined with a unique index makes adding tags Awesome and awesome impossible because the database sees them as the same thing.  To make some of the case sensitive spec pass on mysql, I had to remove the index just for those specs.  I added a shared_example that is included where needed.