Implementations of fundamental data structures in c