tidied up code quite a bit.
playing from the middle works; temporarily fixed issue of indiv player.playing discrepancies with a setTimeout