a Generic (that's right generic) Binary Tree written in C