easier to understand http://discuss.leetcode.com/questions/280/flatten-binary-tree-to-linked-list