Test/implementation for building out artist appearances on tracks.

The implementation gets around this bug: https://github.com/rails/rails/issues/10945 and basically uses an after_save callback to first clear out all associated appearances and then reset them from a list of ids.

I don't <3 this.
Update gems