A true workflow library (NOT a state machine) for ruby