Creates a PatternModel using the input (name, variables, actions, return
value, rendering, and constraint system) returnClause can be null
variables and actions must be non empty Lists
Interface that abstracts the commonalities between different parsed Pattenr
related entities: namely PatternModel instances and InstantiatedPatternModel
ones