firewall.py: catch SIGINT and SIGTERM too.
firewall.py: catch SIGINT and SIGTERM too.

There were still a few conditions under some OSes that would cause
firewall.py to terminate without cleaning up the firewall settings.  'pkill
sshuttle' was one of them.  Ignore a couple more signals to further ensure a
correct cleanup.

(This only affects sshuttle --firewall, which is a subprocess of the main
sshuttle process.  The firewall is supposed to exit automatically whenever
the client exits, and so far that part seems to work reliably.)

sshuttle/sshuttle,dushmis/sshuttle,dxq-git/sshuttle,zabracks/sshuttle,apenwarr/sshuttle,zabracks/sshuttle,GrimDerp/sshuttle,shaunstanislaus/sshuttle,GrimDerp/sshuttle,shaunstanislaus/sshuttle,xtaran/sshuttle,GrimDerp/sshuttle,shaunstanislaus/sshuttle,sshuttle/sshuttle,xtaran/sshuttle,xtaran/sshuttle,apenwarr/sshuttle,dushmis/sshuttle,zabracks/sshuttle,dxq-git/sshuttle,dxq-git/sshuttle,dushmis/sshuttle