William Hays (Johnston County)