Allow multiple blank lines in srt files.
Move dummy init function into BaseWriter
WebVTTWriter: Accept and write WebVTT metadata header
WebVTTReader: Do not throw exception on empty cues

Empty cues are valid in WebVTT. See
https://github.com/pbs/pycaption/issues/42.
tests: Add a test for WebVTT files with empty cue(s)
SCCReader: Subtract offset before correcting for timebase

If we include the offset in time base correction, the calculated timestamp
will be off by `offset * 1001 / 1000 - offset` seconds when non-drop frame
timebase is used.
Update srt.py

Fixes index error for files that have less than 2 lines
Update srt.py

Remove unnecessary else condition
Make srt time parsing slightly more robust

Allows for e.g. trailing gibberish, which seems to be common.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>