Kfsti 668

This is the initial PR  for applying the KC CGB overlay project to KC 6.0. It should obviously be reviewed closely.
this class must implement Serializable because it is used in other Serializable classes