Add stack implementation & unit tests