Binary Tree Maximum Path Sum

NOTE: node->val may be negative.