Maybe, but having classes be value generally makes no sense, because you can't use polymorphism with value types.
If it doesn't make sense for reference types to be value types, then your suggestion to use structs (value types) to implement reference types doesn't make sense either.
