Fix #11919: handling exceptions in scheduled jobs

Improvements:

 1. Catch exceptions from scheduled jobs and log them.
 2. Only silence OSErrors removing proc file if it's an EEXIST:
 otherwise log it
 3. Put the /var/cache/salt/minion/proc/<jid> deletion in a finally:
 block
 4. Only respect a "running" job as such if its PID really exists