http://en.wikipedia.org/wiki/Splay_tree
https://sites.google.com/site/kc97ble/container/splay-tree/splaytree-cpp
https://sites.google.com/site/kc97ble/container/splay-tree/splaytree-cpp-3
https://sites.google.com/site/kc97ble/container/splay-tree/splaytree-cpp-4-topdown
https://sites.google.com/site/kc97ble/container/splay-tree/splaytree-cpp-5-lazyupdate