add spinlock
Embed assembly pause instruction
Implement reference counting & Markable pointer type, this is the corner stone of lock-free skiplist