fix for race condition when multiple processes try to add the same tag
Address code review comments

- Raising the exception from save_tags is better than catching all exceptions.  The client can retry the save on duplicate error.
- add `extend self` to ActsAsTaggableOn::Utils so module functions can be called directly
compare errors to empty array so it is easier to determine what failed on CI if there is an unintended failure.
Mysql was failing on CI with deadlocks.  Not sure if special casing mysql with retry was a good idea anyway.  Now always raise ActsAsTaggableOn::DuplicateTagError when ActiveRecord::RecordNotUnique is thrown.
Merge pull request #499 from LessonPlanet/handle-race-condition-adding-tags

fix for race condition when multiple processes try to add the same tag