Runtimes designed for testing.
Some simulate failure conditions; some monitor activity.
Implement a tcpProvider that can break things.
Support for counting various TCP stats for a Runtime.