Defense Sec. Mattis resigns after Trump disputes