[dvbviewer] add basic support for timeshift
[dvbviewer] make the ui settings more robust
massive code cleanup/coding style

* add #ifdef for headers
* use class instead of structs
* move logging to LOG_DEBUG, remove __FUNCTION_ from LOG_INFO
* use CStdString everywhere (no std::string anymore)
* get rid of a few char*, use c++ functions
* use c++ style in general. e.g. constructors instead of assignments
* use PVR_STRCPY as strncpy makro (copied from other pvr addons)
* probably much more
[dvbviewer] 64bit channel ids, code cleanup and much more

this commit is gone bad as it contains too much changes. at first I
tried to do just some code cleanup, but as I jumped from block to block
I just found more and more positions to cleanup. after a few hours of
work it was impossible to follow the changes.

this commit includes:
* massive code cleanup
* in generell more C++-ish code
* use iterator instead of index access where possible
* read, calculate and use 64bit channel ids
* for favourites there's a fallback for old 32bit channel ids
* use channel names from favourites
* replace "/"-character with " " in channel logo urls
* resort methods and member variables in DvbData.h
* resort methods in DvbData.cpp to match the new sorting of DvbData.h
* less LOG_INFO logs, better LOG_DEBUG logs
* use PRId64/PRIu64 for int64_t/uint64_t
* probably much more
[dvbviewer] forgot about a changelog entry
[dvbviewer] fix possible crash during timer updates
[dvbviewer] pump version to 1.7.7
[dvbviewer] fix typo in vs project file
[dvbviewer] fix crash with RS 1.25.0, pump version
[dvbviewer] pump version to 1.7.8
fix loading top level favourite channels

favourite channels in top level were incorrectly recognized as
channel groups.
pump version to 1.7.9
Merge pull request #183 from manuelm/master

pvr.DVBViewer: various improvements, bugfixes + basic timeshift support