John Whiteley (army officer)