Subtitle\Cleaner: gracefully handle cleanup of corrupted subtitles

In this patch I reworked the SrtParser to be more resistant to corrupted subtitles.
If it discovers bad data, it will give up to parse the remaining file, but still progress and clean up the successfully parsed captions.

On a side note, it appears as several (all??) subs downloaded from api.thesubdb.com are corrupted in a way where the end of the file has a repeating block of data found earlier in the file. It lead me to have a look at the SubDBSubProvider, but it only uses a simple curl fetch.
I verified using curl from the commandline and get the same corrupt file from their api.

Example: 

  curl --user-agent "SubDB/1.0 (MovieManager/1.0; http://mike-dev.info)" "http://api.thesubdb.com/?action=download&hash=644ebef69012778809c5255a2a4a7ae6&language=en"