Make more robust.

- 0-length titles shouldn't cause a divison by zero.
- Unscannable titles are also ignored.
- Unparseable audio and subtitle track data is ignored.
- All of these ignored things generate a warning.
Added --titles flag.
Add -t alias for --titles.
Remove defunct TODO about hardcoded path
Add TODO to detect if HandBrakeCLI is burning in vobsubs
Flip tile count scanning loops so we can prioritize
Do not use --no-dvdnav flag to HandBrakeCLI
Handle title scan failures gracefully
Make AUDIO_TRACK_FIELD_REGEX more permissive
Accept ranges in --title flag
Fix broken indentation
Fix indentation: 4 spaces instead of 2
Improve --help output

- Include __doc__ in --help output.
- Fix some typos in __doc__.
Change input and output to flags

Having them be flags instead of positional arguments makes it easier to do
things like:

    alias dvdrip='/some/path/dvdrip.py -i /dev/dvdrom'
Make error handling more consistent.
Use UserError, not assert, for user errors