Implicitly call cleanup() on script exit
Implicitly call cleanup() on script exit

The `trap' builtin can accept as a parameter not only a list of signals
to handle, but also a number of events.  The most interesting of them is
the `EXIT' event, triggered when the script terminates.

Since we don't want to run the cleanup() actions when another script is
running, it is better to set up the traps after the check for a running
script.  The only requirement for this action is have no side-effects
that need cleaning before this statement, something that is currently
(partially) true.

ianmiell/cheapci