Improve diode LEF files.

 * Add `USE` and `SHAPE` properties.
 * Remove `CORE` class.
 * Fix layer for power pins.

Fixes https://github.com/google/skywater-pdk/issues/141.

Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
diff --git a/cells/diode/sky130_fd_sc_hs__diode_2.lef b/cells/diode/sky130_fd_sc_hs__diode_2.lef
index ab8596f..d136835 100644
--- a/cells/diode/sky130_fd_sc_hs__diode_2.lef
+++ b/cells/diode/sky130_fd_sc_hs__diode_2.lef
@@ -14,20 +14,22 @@
 #
 # SPDX-License-Identifier: Apache-2.0
 
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__diode_2
   CLASS CORE ANTENNACELL ;
-  SOURCE USER ;
+  FOREIGN scs8hs_diode_2 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  0.960000 BY  3.330000 ;
   SYMMETRY X Y ;
   SITE unit ;
   PIN DIODE
     ANTENNADIFFAREA  0.641700 ;
+    ANTENNAGATEAREA  0.641700 ;
     DIRECTION INPUT ;
+    USE SIGNAL ;
     PORT
       LAYER li1 ;
         RECT 0.095000 0.265000 0.865000 3.065000 ;
@@ -35,6 +37,7 @@
   END DIODE
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -45,20 +48,21 @@
     DIRECTION INOUT ;
     USE GROUND ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 0.000000 0.250000 0.250000 ;
+      LAYER pwell ;
+        RECT 0.000000 0.000000 0.960000 0.245000 ;
     END
   END VNB
   PIN VPB
     DIRECTION INOUT ;
     USE POWER ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 3.080000 0.250000 3.330000 ;
+      LAYER nwell ;
+        RECT -0.190000 1.660000 1.150000 3.520000 ;
     END
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef b/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
index f86560e..84b360f 100644
--- a/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
+++ b/cells/diode/sky130_fd_sc_hs__diode_2.magic.lef
@@ -29,6 +29,7 @@
     ANTENNADIFFAREA  0.641700 ;
     ANTENNAGATEAREA  0.641700 ;
     DIRECTION INPUT ;
+    USE SIGNAL ;
     PORT
       LAYER li1 ;
         RECT 0.095000 0.265000 0.865000 3.065000 ;
@@ -36,6 +37,7 @@
   END DIODE
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -60,6 +62,7 @@
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef
index c534395..6342a0f 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.lef
@@ -14,19 +14,20 @@
 #
 # SPDX-License-Identifier: Apache-2.0
 
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_2
-  CLASS CORE SPACER ;
-  SOURCE USER ;
+  CLASS SPACER ;
+  FOREIGN scs8hs_fill_diode_2 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  0.960000 BY  3.330000 ;
   SYMMETRY X Y ;
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -37,20 +38,21 @@
     DIRECTION INOUT ;
     USE GROUND ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 0.000000 0.250000 0.250000 ;
+      LAYER pwell ;
+        RECT 0.000000 0.000000 0.960000 0.245000 ;
     END
   END VNB
   PIN VPB
     DIRECTION INOUT ;
     USE POWER ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 3.080000 0.250000 3.330000 ;
+      LAYER nwell ;
+        RECT -0.190000 1.660000 1.150000 3.520000 ;
     END
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
index 745bafb..e3942da 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_2.magic.lef
@@ -19,7 +19,7 @@
   DIVIDERCHAR "/" ;
   BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_2
-  CLASS CORE SPACER ;
+  CLASS SPACER ;
   FOREIGN sky130_fd_sc_hs__fill_diode_2 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  0.960000 BY  3.330000 ;
@@ -27,6 +27,7 @@
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -51,6 +52,7 @@
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef
index 29a3430..a88155a 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.lef
@@ -14,19 +14,20 @@
 #
 # SPDX-License-Identifier: Apache-2.0
 
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_4
-  CLASS CORE SPACER ;
-  SOURCE USER ;
+  CLASS SPACER ;
+  FOREIGN scs8hs_fill_diode_4 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  1.920000 BY  3.330000 ;
   SYMMETRY X Y ;
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -37,20 +38,21 @@
     DIRECTION INOUT ;
     USE GROUND ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 0.000000 0.250000 0.250000 ;
+      LAYER pwell ;
+        RECT 0.000000 0.000000 1.920000 0.245000 ;
     END
   END VNB
   PIN VPB
     DIRECTION INOUT ;
     USE POWER ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 3.080000 0.250000 3.330000 ;
+      LAYER nwell ;
+        RECT -0.190000 1.660000 2.110000 3.520000 ;
     END
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
index 66a8412..817e8c0 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_4.magic.lef
@@ -19,7 +19,7 @@
   DIVIDERCHAR "/" ;
   BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_4
-  CLASS CORE SPACER ;
+  CLASS SPACER ;
   FOREIGN sky130_fd_sc_hs__fill_diode_4 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  1.920000 BY  3.330000 ;
@@ -27,6 +27,7 @@
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -51,6 +52,7 @@
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef
index aca7bde..3aa025c 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.lef
@@ -14,19 +14,20 @@
 #
 # SPDX-License-Identifier: Apache-2.0
 
-VERSION 5.5 ;
-NAMESCASESENSITIVE ON ;
-BUSBITCHARS "[]" ;
-DIVIDERCHAR "/" ;
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_8
-  CLASS CORE SPACER ;
-  SOURCE USER ;
+  CLASS SPACER ;
+  FOREIGN scs8hs_fill_diode_8 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  3.840000 BY  3.330000 ;
   SYMMETRY X Y ;
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -37,20 +38,21 @@
     DIRECTION INOUT ;
     USE GROUND ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 0.000000 0.250000 0.250000 ;
+      LAYER pwell ;
+        RECT 0.000000 0.000000 3.840000 0.245000 ;
     END
   END VNB
   PIN VPB
     DIRECTION INOUT ;
     USE POWER ;
     PORT
-      LAYER met1 ;
-        RECT 0.000000 3.080000 0.250000 3.330000 ;
+      LAYER nwell ;
+        RECT -0.190000 1.660000 4.030000 3.520000 ;
     END
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;
diff --git a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
index 68c63f0..8069a3a 100644
--- a/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
+++ b/cells/fill_diode/sky130_fd_sc_hs__fill_diode_8.magic.lef
@@ -19,7 +19,7 @@
   DIVIDERCHAR "/" ;
   BUSBITCHARS "[]" ;
 MACRO sky130_fd_sc_hs__fill_diode_8
-  CLASS CORE SPACER ;
+  CLASS SPACER ;
   FOREIGN sky130_fd_sc_hs__fill_diode_8 ;
   ORIGIN  0.000000  0.000000 ;
   SIZE  3.840000 BY  3.330000 ;
@@ -27,6 +27,7 @@
   SITE unit ;
   PIN VGND
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE GROUND ;
     PORT
       LAYER met1 ;
@@ -51,6 +52,7 @@
   END VPB
   PIN VPWR
     DIRECTION INOUT ;
+    SHAPE ABUTMENT ;
     USE POWER ;
     PORT
       LAYER met1 ;