add SentinelSkipNode and make use of compareTo method