[pvr] fix: last watched timestamps won't update after channel switch

As we only update the last watched timestamp of the current playing channel before a successful channel switch is performed we sometimes continue the wrong last watched channel and group.
fixup: drop const for CPVRChannel
Fix: missing space for Kodi forks. Thanks to @notspiff
Update tests for SysInfo::GetUserAgent(). Thanks @notspiff
Merge pull request #5400 from xhaggi/pvr-fix-last-watched

[pvr] fix: last watched timestamps won't update after channel switch
fixed: use the proper make instead of calling 'make' directly

fixes builds on freebsd
cmake buildsystem
add tests needed by new u16 string stuff
wrap cmyth properly
move some more install related stuff to install script
move all install code to platform install script
allow building without doxygen
fix building with yajl2
generate scripts in a subdir to avoid problems configuring in top dir
properly wrap library.xbmc.foo
link to threading lib
remove duplicate mpeg2 entry
properly locate java and swig

also use the detected paths for java, swig and doxygen
cosmetics: move all depends together for better readability
changed: build with a prefix to avoid cluttering the build dir

some peeps still do in-source builds out of old habits. this is
to annoy them slightly less, though they should STOP doing in-source
builds in the first place