Sketcher: GCS: add angle-related methods to DeriVector2

methods: length2() (square of the length), polarAngle(), frame(),
unframe(), unframeNoScale()
OpticConstraints: SnellsLaw: fix datum edit bug

After previous fix, the dimensionless value was not accepted (the
constraint's value did not change, the changes were ignored).