private:
(each node has a node * prev)
node * tail; //???helpful?
Again, there is nothing in a stack that will benefit from each node
having a pointer to the previous node.
Using a doubly linked list to allow the top to be at the end
or tail position, this is a poor choice...wastes memory and adds additional
operations...