use a c++ map instead of arrays to store audio stream data
Side effect: audio streams as returned by findAllPids() are now
sorted by pid, helping default selection for MPEG and VDR streams
* avoid race conditions by using a mutex to protect curr_pos, fixing
artefacts during timeshift playback
* make GetPosition() cheaper by interpolating end_pts and only fetching
the "real" end_pts after the file has grown by 10MB