ShapeExporter, RuleExporterOO. Revised

Revise to allow empty shapes as appropriate