binary tree max path sum, just a post-order traversal!