+ [OE-4049] allow referral to be set when scheduling, but not rescheduling
+ [OE-4049] enhanced schedule tests with refactoring to improve testability