class EMJack::Connection

def use(tube, &blk)

def use(tube, &blk)
  return if @used_tube == tube
  f = Fiber.current
  # WANT: per command errbacks, would be nice, instead of one global
  # errback  = Proc.new {|r| f.resume(r) }
  on_error {|r| f.resume(r)}
  @used_tube = tube
  @conn.send(:use, tube)
  # WANT: Add conditional on add_deferrable to either accept two procs, or a single block
  #       .. two procs = callback, errback
  add_deferrable { |r| f.resume(r) }
  Fiber.yield
end