service: some additional fields as per user request
service: service listing was broken

I think it was quite possible for two services on the same multiplex not
to share the same tuner. Also I wasn't convinced about how it kicked running
services.
mpegts: allow service stop to be called on inactive services
misc: remove redundant code