Tree Ensemble Explainability through the Hoeffding Functional Decomposition and TreeHFD Algorithm