I think subclassing sockets works..

will need tests :)