asyncproc: check for valid previous signal handler before reinstating it

If the previous signal handler was not installed from Python, a value of
None is returned by signal.signal. This occurs when Python calls the
destructors during system exit.

Fixes #27
Merge pull request #30 from quigybo/kill_mplayer

asyncproc: check for valid previous signal handler before reinstating it
Add test to check asyncproc doesn't fail on exit
Merge branch 'kill_mplayer' of https://github.com/quigybo/orochi

Add test to check asyncproc doesn't fail on exit