Improved performance of shuffle playlists

- preloading playlists
- stopped re-instantiating them on every cycle of a loop.
- experimented with randomly generating track/playlist indexes in web
worker, no real difference until you make the same call 3 or more times
in a short period, at which point something is getting cached and
subsequent runs are very fast,