capmt: do not duplicate subscribed services

descrambler_service_start() was sometimes called multiple times
resulting in duplicate start of capmt server for the same
service.
html5 streaming: updated to use new HTTP api
webui: replaced non-working vlc plugin wrapper with the experimental html5 video wrapper.
tvhpoll: added support (epoll) for auto-modifying poll entries
webui: minor re-ordering of status tabs
http: added new HTTP client code to use CURL

this is being used within IPTV code, and eventually I might make this a bit
more generic so I can use from elsewhere, like imagecache.
util iptv: some url processing utilities
util iptv: add support for using liburiparser

This is more flexible (it supports IPv6) and almost certainly more robust!
iptv: re-structure IPTV code, including adding back in IPv6 support

Backends for handling various protocols are now modular. It's not
well tested and I think the APIs could probably be improved/simplified.
support iptv: updated the configure script and Makefile for iptv code
iptv: ensure that IPTV network settings are saved
linuxdvb: move scanfile lines from debug to trace
webui streaming: make weight param universal for all HTTP streaming
mpegts: add helper function for determining the weight of a mux instance
iptv: added new configuration to allow subs and bandwidth limitations

The bandwidth limit is a soft one, it will stop any new subscriptions if
the peak bandwidth on the current services exceeds the limit. Possibly
this will need a bit of additional averaging in future to stop false
triggers.
Merge pull request #305 from manio/master

capmt: do not duplicate subscribed services
tvhlog: shut up the Lucid build complaining about un-init var
epggrab: move message to debug, to stop startup spam!
http: make line processing dynamic

This overcomes issues caused by long lines, as experienced when enabling
cookies for extjs grid state.
webui: enable state on all idnode based grids