Fixed subscrption methods to handle remote subscribers.

If subscriber is received from remote asyncoro, check if it is
actually local (the remote asyncoro might have obtained a reference
to it with 'locate') and get local Coro/Channel instance if so.
If subscriber is remote, 'subscrbie' and 'unsubscribe' methods should
check if subscriber is already in the subscribers and indicate
appropriate return value.