Die gracefully

Properly handle a SIGTERM or a child dying, kill all child processes and die gracefully (hopefully solves #34).

I'm currently opening this pull request mostly to get some feedback rather than to have it quickly merged.

The diff on main.py isn't very useful due to the changes in indentation. A [git diff -w](https://github.com/trbs/bucky/pull/41/files?w=1#diff-1) seems more helpful. (I just found out that adding a `?w=1` to any github diff url is like doing `git diff -w`!)