OCSADV-196

Created the interface for science models and extracted the GMOS science area code from the TPE into the model.
Minor changes to ImPolygon for Java interoperability.
I wonder if we need this trait at all.  We can't use a `ScienceArea` generically anyway since you need to match it up with the correct type of instrument.  For example, in the GMOS TPE feature below you always know you're working with a `GmosScienceArea`.  I suspect the same for AGS.

The two `transformedScienceArea` helper methods might end up being necessary for probe arms as well if extracted from here and modified slightly to accept any `Shape` instead of looking it up via the call to `scienceArea`.