How to Implement a Stack Data Structure