This looks a little odd to me. Why not remove `replyHandler` and do a pattern matching to see if `reply` is a `ReplyReceiver`? IOW, if someone wants to have a SyncReply and a ReplyReceiver, it could just implement those two traits. It kinda feels odd that you have a SyncReply that may or may not have a replyHandler as instance optional variable.