[cmyth] Resolve deadlock in certain circumstances

- cmyth_livetv_chain_switch(): file destroy is locked. So release old file out off latch.
[cmyth] LiveTV channel switch: Review

cmyth_recorder_set_channel()
cmyth_recorder_change_channel()

- File destroy is locked. So release chain struct out off latch.
- Since chain struct has changed, copy needed fields from old chain.
[mythtv-cmyth] LiveTV channel switch: Review

MythRecorder::SetChannel()

- Rebase process with improvements of SpawnLiveTV
[mythtv-cmyth] LiveTV channel switch: Review

- Used as much as possible method SetChannel(). Fallback using old method: Close live stream for reopening.

Keeping current RECORDER live, we avoid to recheck all inputs.