feat: update transport layer to accept whole frame
chore: add documentation to the code
fix: add generic data to transport layer
feat(transport): add transport layer entity