Revert "Towards templatizing common Lookup types"

This reverts commit 727135f3a9938c1ebd5b9f5015a46c7ccc8573c5.

This is work-in-progress.  Didn't mean to push it out just yet.
diff --git a/src/hb-ot-layout-gpos-table.hh b/src/hb-ot-layout-gpos-table.hh
index fa22934..c8020d8 100644
--- a/src/hb-ot-layout-gpos-table.hh
+++ b/src/hb-ot-layout-gpos-table.hh
@@ -1268,7 +1268,7 @@
 };
 
 
-struct ExtensionPos : Extension<struct GPOS>
+struct ExtensionPos : Extension
 {
   friend struct PosLookupSubTable;
 
@@ -1382,10 +1382,8 @@
 
 struct PosLookup : Lookup
 {
-  typedef struct PosLookupSubTable SubTable;
-
-  inline const SubTable& get_subtable (unsigned int i) const
-  { return this+CastR<OffsetArrayOf<SubTable> > (subTable)[i]; }
+  inline const PosLookupSubTable& get_subtable (unsigned int i) const
+  { return this+CastR<OffsetArrayOf<PosLookupSubTable> > (subTable)[i]; }
 
   inline bool apply_once (hb_apply_context_t *c) const
   {
@@ -1426,7 +1424,7 @@
   inline bool sanitize (hb_sanitize_context_t *c) {
     TRACE_SANITIZE ();
     if (unlikely (!Lookup::sanitize (c))) return TRACE_RETURN (false);
-    OffsetArrayOf<SubTable> &list = CastR<OffsetArrayOf<SubTable> > (subTable);
+    OffsetArrayOf<PosLookupSubTable> &list = CastR<OffsetArrayOf<PosLookupSubTable> > (subTable);
     return TRACE_RETURN (list.sanitize (c, this, get_type ()));
   }
 };
@@ -1439,8 +1437,6 @@
 
 struct GPOS : GSUBGPOS
 {
-  typedef struct PosLookup Lookup;
-
   static const hb_tag_t Tag	= HB_OT_TAG_GPOS;
 
   inline const PosLookup& get_lookup (unsigned int i) const
@@ -1549,10 +1545,10 @@
 inline bool ExtensionPos::sanitize (hb_sanitize_context_t *c)
 {
   TRACE_SANITIZE ();
-  if (unlikely (!Extension<GPOS>::sanitize (c))) return TRACE_RETURN (false);
+  if (unlikely (!Extension::sanitize (c))) return TRACE_RETURN (false);
   unsigned int offset = get_offset ();
   if (unlikely (!offset)) return TRACE_RETURN (true);
-  return TRACE_RETURN (StructAtOffset<PosLookup::SubTable> (this, offset).sanitize (c, get_type ()));
+  return TRACE_RETURN (StructAtOffset<PosLookupSubTable> (this, offset).sanitize (c, get_type ()));
 }
 
 static inline bool position_lookup (hb_apply_context_t *c, unsigned int lookup_index)