All of what we take for granted in modern computing architecture was invented as a performance hack by von Neumann in 1945 to take advantage of then-novel vacuum tube tech.
Back in the day Mercury, Venus, Earth, Ceres, Pallas, Vesta, Juno, Mars, Jupiter, Saturn, Uranus, and Neptune were the 12 planets. You could kinda consider Pluto to be the 13th planet, but in 1930 when it was discovered there were already over 1000 named asteroids. So Pluto is the 1146th planet.
Pallas and Vesta aren't gravitationally rounded, though. But then again, the Moon is (being much larger than Ceres). (It's just better numbered as planet 3-1.)
There's some sharing used to avoid heavy copies, though GC runs at the process level. The implementation is tilted towards copying between isolated heaps over sharing, but it's also had performance work done over the years. (In fact, if I really want to cause a global GC pause bottleneck in Erlang, I can abuse persistent_term to do this.)
It was the easiest thing of all time to get friends and family onto Signal, actually, before the idiots took SMS out and it became just another confusing messenger app.
Okay, I admit the "badly designed" part is my claim, but I'm very confident in that claim and can explain why.
The original impetus that led to MNG was animated GIF. While GIF was also designed as extensible, GIF practically only had a handful number of extensions and wasn't that complex. MNG in comparison was essentially a binary version of SVG as I have described, except that it had no vector graphics and can more accurately be described as a binary slideshow format [1]. No one asked for this! The PNG development group forgot its goal and made a much bloated specification. As a result libmng, while working, was a quite big library to be incorporated into Gecko and ultimately rejected in favor of APNG which only required a small patch to libpng. It is amusing that the original PNG specification had chunks corresponding to GIF extensions including animation one; those chunks might have been widespread in the alternate universe!
If the group's goal was indeed a slideshow format, it should have been two separate formats, one for multi-part images and one for animations and object transformations. The former is necessary because one aspect of GIF was that a difference from the previous frame can be encoded, so this "Delta-PNG" format should have been made into the mainline PNG specification as an option. (These additional images could have been used as previews, for example.) And anything else should be a simple textual format that refers to external files. MNG instead had chunks for JPEG images---came with its standalone sister format called JNG---, which is absurd when you think about it---why should there be JNG when JFIF and Exif already exist? The modern SVG happens to be perfectly usable as this second format, and it is fine being textual.
I let people do this (and mildly encourage them to) all the time, if their pet peeve makes sense to enough of the (small) team. Often, hard-won experience manifests as getting annoyed by trivial-seeming things!
I think I agree that, in projects dominated by C++ or similar languages, I would be less positive about it, just because of how complicated they can get.
You have neglected to consider that Microsoft bad; consider how they once did something differently from a Linux distribution I use. (This sentiment is alive and well among otherwise intelligent people; it's embarrassing to read.)