wrapping workflows with a class