Fix for #29: output subtitled with overlapping errors

It looks like spudec can return end_pts=UINT_MAX, which apparently
means 'display this until the next subtitle'. Added a caching layer;
first all converted subtitles are stored in a vector and then written to
the file with end_pts value fixed if needed.