Additional features

Models can now serialise.
Added validation for the configuration via model.
Updated documentation.