Fix multicast connect race

The `-[RACMulticastConnection connect]` method is concurrent safe from a memory management perspective but doesn’t guarantee that all callers will receive the disposable, this moves the creation of the disposable into the locked section ensuring all callers will receive it.