The prognosis for John Middleton isn’t good. The 43-year-old engineer from Asheville, North Carolina, has a type of bile duct cancer hidden inside his liver called cholangiocarcinoma. It’s rare, ...