enable abort while bottle turning up
refactoring error handling

This commit introduces error code as the opposite of exceptions. If an
exception is thrown it can be caught, otherwise the function returns. If
an error code is returned it must be passed on. Doing nothing can be
compared to catching an exception.

Now abort (button and command) should work in all situations, an ERROR
should be printed always but only once. Many bugs fixed.
add POURING message after resuming pour, fixes #10