Clean up variant images association

The "has_many :images" was broken since it didn't specify the class name, and I couldn't figure out why these were defined this way anyway.
Consolidating "images_for_variant" and "images" into a single normal association.  Will make stuff like preloading easier to work with.
Fix gem dependencies