Ethan Jordan's last-gasp free helps Tyrone edge Roscommon 3-16 to 2-18 in an absorbing All-Ireland SFC first round clash.