LEMS - User-defined types for model specification Robert Cannon and Padraig Gleeson, October 2011