implement process sentinel for iplayer downloads

process state, in principle, goes

  connecting -> downloading -> transcoding -> finished
     |               v             |
     '-----------> failed <--------'

thoughat the moment there's a wrong edge from downloading to finished
if the get-iplayer process is terminated at an unfortunate time.