DEV: Add Model, ModelState and Underlying classes in cpp lib