Add new implementation of the tvheadend addon

I rebased my fork on upstream a few days ago so I decided I may just as well post this as a PR so we can slowly start looking at it. I'm basing this off a separate branch so work can continue in the master branch meanwhile.

There are some few kinks to work out (some Windows-only compiler warnings) and the infamous timeshift bug.

@opdenkamp start reviewing whenever you feel like it. If you want me to squash anything already, please say so.