Why go through the effort of reimplementing all this instead of using libp2p?

You mean the library that almost got me banned from my VPS provider because it dialed about half the RFC1918 space?