From http://robots.thoughtbot.com/rails-has-and-belongs-to-many-conveniences/