Created base interface IModelData which can handle models which change

Signed-off-by: Martin Evans <martindevans@gmail.com>