major re-write of track's .prepare() and .loadTrack() methods