metaprogramming and carrierwave - polymorphic models sharing an image uploader