run forever - we can now stop via command as well as signals