Start cleaning up get_size()

So we know when the size is static and when dynamic.
diff --git a/src/hb-open-file-private.hh b/src/hb-open-file-private.hh
index cf75df9..c531c29 100644
--- a/src/hb-open-file-private.hh
+++ b/src/hb-open-file-private.hh
@@ -47,20 +47,19 @@
 
 typedef struct TableDirectory
 {
-  static inline unsigned int get_size () { return sizeof (TableDirectory); }
-
   inline bool sanitize (hb_sanitize_context_t *context) {
     TRACE_SANITIZE ();
     return context->check_struct (this);
   }
 
+  DEFINE_SIZE_STATIC (16);
+
   Tag		tag;		/* 4-byte identifier. */
   CheckSum	checkSum;	/* CheckSum for this table. */
   ULONG		offset;		/* Offset from beginning of TrueType font
 				 * file. */
   ULONG		length;		/* Length of this table. */
 } OpenTypeTable;
-ASSERT_SIZE (TableDirectory, 16);
 
 typedef struct OffsetTable
 {
@@ -101,7 +100,7 @@
   inline bool sanitize (hb_sanitize_context_t *context) {
     TRACE_SANITIZE ();
     return context->check_struct (this)
-	&& context->check_array (tableDir, TableDirectory::get_size (), numTables);
+	&& context->check_array (tableDir, TableDirectory::static_size, numTables);
   }
 
   private: