Fix bug in SketchObject::execute() that throws exception instead of returning an error
Allow datum points and lines to have offsets from their references
Allow datum point and line from circular reference
Some code cosmetics