Trump says he's replacing Mattis with deputy defence secretary Patrick Shanahan in an acting capacity on January 1.