code: func NewSwapAt(a, b BufferAt) BufferAt {
  	if b.Cap() <= a.Cap() {
  		panic("Buffer b must be larger than a.")
  	}
  	return &swap{A: a, B: b}
  }
docs: // NewSwapAt creates a BufferAt which writes to a until you write past a.Cap()
  // then it io.Copy's from a to b and writes to b.
  // Once the Buffer is empty again, it starts over writing to a.
  // Note that if b.Cap() <= a.Cap() it will cause a panic, b is expected
  // to be larger in order to accomodate writes past a.Cap().