code: func newChain(maxSize int) blockledger.ReadWriter {
  	preGenesis := &cb.Block{
  		Header: &cb.BlockHeader{
  			Number: ^uint64(0),
  		},
  	}
  
  	rl := &ramLedger{
  		maxSize: maxSize,
  		size:    1,
  		oldest: &simpleList{
  			signal: make(chan struct{}),
  			block:  preGenesis,
  		},
  	}
  	rl.newest = rl.oldest
  	return rl
  }
docs: // newChain creates a new chain backed by a RAM ledger