Automatic timeshift start. Settings are located in settings -> system -> user interface menu.

Signed-off-by: Littlesat <littlesat99@yahoo.com>
servicemp3: cosmetic: remove misleading extranous 0 in hex number.
navigation: add support for multiple decoders
epgcache, lookupEvent: clear eServiceEvent pointer

In several occasions, the pointer is reused by
the user, and contains the previous result.
When the retval is not checked, this leads to
duplicate events being displayed.

So make sure the eServiceEvent pointer is NULL
when we return an error.
vtuner: do not start a pes filter untill feeds are requested

dvb-usb-v2 no longer supports feeds to be started while
the frontend is sleeping (adap->active_fe is set to -1).
Not only does it not allow this anymore, but trying to do so
seems to trigger bugs, when adap->active_fe is used as an
index in adap->fe[]

So we wait till the vtuner device requests feeds to be
started, by that time the frontend has been activated
and tuned.
servicemp3: different handling of subtitles from gstreamer.

- cache all (future and past) subtitles received from gstreamer,
not only "current" ones, this works better, because gstreamer
does not always send subtitles in time for enigma;
- use map instead of list for cache for better efficiency;
- use locking on the subtitles cache data;
- don't throw away subtitle cache when seeking;
- store only necessary information (start, end, text) in cache,
instead of complete PangeSubtitle structure per subtitle;
- use ns/ms/pts units more consistently;
- use subtitle end time instead of start time to decide whether
subtitle is current and take already passed time since begin of
subtitle into account, this enables displaying subtitles that
are "skipped into half way" when step-skipping.

Thanks to pieterg and sjaaky for their input.
servicemp3: remove unnecessary locking for subtitles.

It appears the code accessing the subtitles cache is run
all within one thread and the enigma2 timer mechanism is
non-preemptive.
esubtitle.cpp: cosmetics and small optimisations
esubtitle.cpp: honour "rewrap subtitles" option for "gstreamer" media
text subtitles
servicemp3: subtitles: reduce debugging output and remove an unused variable
Configure EPG and Info buttons separately

For ET boxes, thanks WTE
RecordTimer: fix (apparent) typo

might have caused recordings without description
AutoDiseqc - Fix for not found sats and GSODs
InfoBarGenerics: clear selected_subtitles on evStart instead of evEnd

evEnd only occurs when we explicitly stop playback,
selecting the next media file while the current
service is still playing, we do not receive evEnd
for the current service, but we do receive evStart
for the next service.
So evStart is a better choice to clear our status.
InfoBarGenerics: do not re-enable subtitles in __updatedInfo

When subtitles are already enabled, we should not
try to enable the cached subtitle, with every
update event.
This behaviour could lead to an endless subtitle
enable loop.
iSubtitleOutput: move python stuff into swig wrappers
InfoBarGenerics: clear selected_subtitles both evStart and evEnd

When e.g. MKVs or possibly other gstreamer files or streams are played
you'll not always get an evStart. So we still do stop the subtitles
on both events, but only when it is really required.
InfobarGenerics: Use serviceChanged instead of serviceStart

As it is used by evEnd and evStart this name is not logical anymore
Add timer the receiver shut down while in standby

For options see SleeptimerEdit menu
Fix for getcachedsubtitle from servicedvb.cpp