.checkMFClasses checks if the variables used in a predict
  method agree in type with those used for fitting.  .MFclass categorizes variables for this purpose.
.checkMFClasses(cl, m, ordNotOK = FALSE)
.MFclass(x)
.getXlevels(Terms, m)terms object..MFclass returns a character string, one of "logical",
  "ordered", "factor", "numeric", "nmatrix.*"
  (a numeric matrix with a number of columns appended) or "other"..getXlevels returns a named character vector, or NULL.
model.matrix such as linear models
  we do not need to differentiate between ordered factors and factors as
  although these affect the coding, the coding used in the fit is
  already recorded and imposed during prediction.  However, other
  applications may treat ordered factors differently:
  rpart does, for example.