patch 9.0.1031: Vim9 class is not implemented yet

Problem:    Vim9 class is not implemented yet.
Solution:   Add very basic class support.
diff --git a/src/typval.c b/src/typval.c
index b1a0060..6faebe4 100644
--- a/src/typval.c
+++ b/src/typval.c
@@ -84,6 +84,13 @@
 		channel_unref(varp->vval.v_channel);
 		break;
 #endif
+	    case VAR_CLASS:
+		class_unref(varp);
+		break;
+	    case VAR_OBJECT:
+		object_unref(varp->vval.v_object);
+		break;
+
 	    case VAR_NUMBER:
 	    case VAR_FLOAT:
 	    case VAR_ANY:
@@ -153,6 +160,12 @@
 	    case VAR_INSTR:
 		VIM_CLEAR(varp->vval.v_instr);
 		break;
+	    case VAR_CLASS:
+		class_unref(varp);
+		break;
+	    case VAR_OBJECT:
+		object_unref(varp->vval.v_object);
+		break;
 	    case VAR_UNKNOWN:
 	    case VAR_ANY:
 	    case VAR_VOID:
@@ -234,6 +247,12 @@
 	case VAR_BLOB:
 	    emsg(_(e_using_blob_as_number));
 	    break;
+	case VAR_CLASS:
+	    emsg(_(e_using_class_as_number));
+	    break;
+	case VAR_OBJECT:
+	    emsg(_(e_using_object_as_number));
+	    break;
 	case VAR_VOID:
 	    emsg(_(e_cannot_use_void_value));
 	    break;
@@ -333,6 +352,12 @@
 	case VAR_BLOB:
 	    emsg(_(e_using_blob_as_float));
 	    break;
+	case VAR_CLASS:
+	    emsg(_(e_using_class_as_float));
+	    break;
+	case VAR_OBJECT:
+	    emsg(_(e_using_object_as_float));
+	    break;
 	case VAR_VOID:
 	    emsg(_(e_cannot_use_void_value));
 	    break;
@@ -1029,6 +1054,12 @@
 	case VAR_BLOB:
 	    emsg(_(e_using_blob_as_string));
 	    break;
+	case VAR_CLASS:
+	    emsg(_(e_using_class_as_string));
+	    break;
+	case VAR_OBJECT:
+	    emsg(_(e_using_object_as_string));
+	    break;
 	case VAR_JOB:
 #ifdef FEAT_JOB_CHANNEL
 	    if (in_vim9script())
@@ -1158,6 +1189,14 @@
 	    to->vval.v_instr = from->vval.v_instr;
 	    break;
 
+	case VAR_CLASS:
+	    copy_class(from, to);
+	    break;
+
+	case VAR_OBJECT:
+	    copy_object(from, to);
+	    break;
+
 	case VAR_STRING:
 	case VAR_FUNC:
 	    if (from->vval.v_string == NULL)
@@ -1878,6 +1917,13 @@
 	case VAR_INSTR:
 	    return tv1->vval.v_instr == tv2->vval.v_instr;
 
+	case VAR_CLASS:
+	    return tv1->vval.v_class == tv2->vval.v_class;
+
+	case VAR_OBJECT:
+	    // TODO: compare values
+	    return tv1->vval.v_object == tv2->vval.v_object;
+
 	case VAR_PARTIAL:
 	    return tv1->vval.v_partial == tv2->vval.v_partial;