Using optional flag in protocol for Delegate pattern