The 'const' version of some function is missing. E.g. there is no const Begin() and End(). This means that if there is a function that receives a const contour model set, it cannot iterate through it in the classic way. There should be two Begin() functions, one with the const specifier, the other without it. Same for End(), and possibly for other functions.
Also, another typedef would be useful for the const iterator type.
I mark this as minor, as it is not a blocker for us.