fixed strange tabulation
little aesthetic changes
added very robust exception handling (by rbino)
keyboard interrupt handling
now is a object