* Support model evaluation for ranking tasks by accepting groupData in XGBoostModel.eval
Storing and then loading a model loses any eval_metric that was provided. This causes implementations that always store/load, like xgboost4j-spark, to be unable to eval with the desired metric.
* Change Booster dump from XGBoosterDumpModel to XGBoosterDumpModelEx Allows exposing multiple formatting options of model dumping.