* feat: stun protocol & stun connection
* rename getResponse into getPong and test it
* add Username attribute
* genUfrag procedure
* Add generateRandomSeq to generate a transaction id
* First draft of getPing
* Use UdpPacketInfo tuple
* Change closing debug message
* Add proper exception tracking
* Change StunConn init behavior
* Add a last UdpPacketInfo
* Add comments
* refactor: change connection management
* Add a lot of comments/Finish refactor
* Add copyright headers on test files
* simplify newRng proc for testing
* add exception tracking for stun transport asynchronous proc
* remove ping/pong example building in the ci
* rename getPong test
* remove maximum connections
* Add ICE stun attributes
* Stun rework
* feat: getBindingRequest
* fix oversight & add comments
* Test rework
* Adds continue in stunMessageHandler loop
* remove `doAssert(false)` from Stun.connect()
* Update TODO
* fix comment typo
* fix: test lacking precision
* docs: add StunConn.init() comments
* chore: make teststun more readable
* feat: use withValue instead of getOrDefault in Stun.connect()
* feat: add check if Fingerprint is valid
* refactor: getAttribute and username/password provider
* chore: removes genUfrag, should be in libp2p instead
* chore: remove redundant test
* chore: change warn log to debug
* docs: update getBindingResponse/Request comments
* chore: renames init into new
* fix: compilation warnings
* chore: change closed line to be at the end of the close procedure
* feat: limit queues size