Local icons - Cache channel icons

This PR adds the ability to cache channel icons locally. Add icons in as normal and enable it through general config tab (Also requires TVH ip to be added in).
TVH will then pull all icons down and store them in the ~/.hts/tvheadend/icons/ folder.
When an htsp client requests a channel icon it will query TVH via the virtual url /logo/logoname.jpg, the iconserve.c routine will then check if the icon is cached, if it is it will be served via a redirect to the virtual url /iconserve/logoname.jpg
If the icon doesn't exist it will try to download it to the cache, if that fails it will simply redirect the user to the real logo url (non-caching).