[Spark-3525] Adding gradient boosting

featureDimension is the number of instance? Probably we need a better name for it.