Portable C Datastructures: LinkedList, HashTable, Stack, and StringBuffer with Union