Hull produced two goals from opposite ends of the quality spectrum as they battled to a 2-1 Championship win over Bristol City at Ashton Gate.