Fix TTC header handling

Also change the Version type to avoid similar bugs in the future.

Reported by Grigori Goronzy.
diff --git a/src/hb-open-type-private.hh b/src/hb-open-type-private.hh
index 4aa47ec..665a260 100644
--- a/src/hb-open-type-private.hh
+++ b/src/hb-open-type-private.hh
@@ -488,7 +488,7 @@
 
 struct FixedVersion
 {
-  inline operator uint32_t (void) const { return (major << 16) + minor; }
+  inline uint32_t to_int (void) const { return (major << 16) + minor; }
 
   inline bool sanitize (hb_sanitize_context_t *c) {
     TRACE_SANITIZE ();