def subscribe(channel, proc = nil, &block)
      if cb = proc || block
        @sub_callbacks[channel] << cb
      end
      @subs << channel
      raw_send_command(:subscribe, [channel])
      return pubsub_deferrable(channel)
    end
def subscribe(channel, proc = nil, &block)
      if cb = proc || block
        @sub_callbacks[channel] << cb
      end
      @subs << channel
      raw_send_command(:subscribe, [channel])
      return pubsub_deferrable(channel)
    end
Subscribe to a pubsub channel

 If an optional proc / block is provided then it will be called when a
 message is received on this channel

 @return [Deferrable] Redis subscribe call