Enhance stack

* rename `add/remove` to `push/pop`.
* new method `isEmpty()` is used to instead of checking the `stack.head`.
* new method `top()` to get the value of top-node without delete it.
* some test.