pub type Stack = *mut StackNode;
Stack: A pointer to the top of the stack
null represents an empty stack