- sending all data at once (instead of seperate header + data -> receive order gets different!)
  - including partial data send handling
- process data from internal frame buffer instead of only waiting on real data on the socket
- terminate deadlock due to tmonitor, using tcriticalsection instead
- singlewritethread option