One very minor change request then, @edwlook -- would you mind just removing the "playlists" argument so that the line reads:

self.class.fetch_from_cache do

This will make the cache_key "global/PlaylistsProxy".