Create an empty stack.
Add an item at the top of stack (if there is space). The new item becomes the top item
Remove the top item from the stack and return it, if there is an item there. This will decrease the stack size by 1.
Some definitions do not return the item.
Dealing with errors is problematic for now.
Return the top item of the stack if it exists. This will not change the stack size.
Return true if the stack is empty
Return true if the stack is full
Return the number of items in the stack.