Mediainfo support

Adding MediaInfo for each EpisodeFile.
For a normal download Import the mediaInfo is retrieved during the import. But for existing files it's delayed and handled later on, hopefully async enough.

I rewrote a major part of the FileNameBuilder logic to give the token replacement code a bit more flexibility.
I still don't like how the multi-episode numbering logic is handled, but it will do for now.

Obviously I also added MediaInfo as naming token:
- Series.Title (unchanged)
- Series.CleanTitle (removes : . ( ) from the title)
- MediaInfo.Video (video codec only)
- MediaInfo.Audio (audio codec only)
- MediaInfo.Simple (video+audio codec, a-la scene)
- MediaInfo.Full (my own concoction that includes audio & subtitle languages)

@markus101, I don't think it's finished yet, but I would like your opinion. Please note that hereby migration 56 is reserved :)
I think `_logger.Debug("Can't get MediaInfo because ' {0}' does not exist:", path);` sounds better... I think... minor issue either way.