message: Use objc_constructInstance in AllocateObjCBridge
  This constructs in-place the ObjC bridge class.
  This fixes a bug where the reference count of the ObjC bridge class was not guaranteed to be initialized on construction.
diff: @@ -53,14 +53,18 @@ RDCCOMPILE_ASSERT(sizeof(NS::UInteger) == sizeof(std::uintptr_t),
  RDCFATAL("'%s' classSize != sizeof(m_ObjcBridge) %lu != %lu", className, classSize, \
  sizeof(wrappedCPP->m_ObjcBridge)); \
  } \
  - wrappedCPP->m_ObjcBridge = klass; \
  + id objc = objc_constructInstance(klass, &wrappedCPP->m_ObjcBridge); \
  + if(objc != (id)&wrappedCPP->m_ObjcBridge) \
  + { \
  + RDCFATAL("'%s' objc != m_ObjcBridge %p != %p", className, objc, &wrappedCPP->m_ObjcBridge); \
  + } \
  MTL::CPPTYPE *real = (MTL::CPPTYPE *)wrappedCPP->m_Real; \
  if(real) \
  { \
  - id objc = (id)&wrappedCPP->m_ObjcBridge; \
  objc_setAssociatedObject((id)real, objc, objc, OBJC_ASSOCIATION_RETAIN); \
  ((MTL::CPPTYPE *)objc)->release(); \
  } \
  + } \
  }
  METALCPP_WRAPPED_PROTOCOLS(DEFINE_OBJC_HELPERS)
  