Add lru cache dependency
Reorganize directory structure
Add nodePool
Prepare tests
Move helpers into seperate file
Refactor send