Pseudo-object oriented programming in C