Re: BBC Micro..
"And yet the BBC went for the micro:bit instead. Really don't understand that."
It's the rather common tradeoff between low-level and high-level. Some, like me, think programming education works best when you start with something that looks like the environment in which actual programming is done. That means that students get full operating systems, languages that get used in production, and we don't stop them from using libraries. You could describe this as top down, where it's totally fine that their first program that accesses a remote server uses someone else's libraries for HTTPS. They can and will learn later how that library did it. Before they are professional programmers, they will have to build their own subset of a TCP stack, enough that they could build a fuller one from the specs if they wanted to, but I'm not going to make them start there before they can use the network.
The other option is bottom up, where students are given small building blocks and they should put them together. It should theoretically give them a better understanding of how and why everything works at the cost of limiting the kind of things they can build with only a little skill and experience. The Micro:bit is designed to make it relatively easy to do basic things without giving them an OS stack, and it is closer to a bottom-up tool with some simplifications to try to eliminate the most annoying aspects of that philosophy. It is not my favorite approach, but they have a reason for it.
"I would love to see a BASIC interpreter capable of interacting with web data courtesy of an extended command set (BBC BASIC was ported to the PC)."
You could write that without too much difficulty, but you will always be chasing the power of other languages. You can easily make an HTTP_RETRIEVE command that fetches a document, but are you going to make them parse the JSON themselves character by character? Or will we have a JSON_DECODE command? When they want to do something that's not HTTP, are we building in specific commands for different protocols or should they POKE their data through a socket? A lot of languages are more complex semantically because there isn't enough structure to give you the power you need there.
"And games produced in assembler."
You can if you want, but I don't know why that is a goal for you and I'm not sure you understand the problems likely to be encountered by those who try it.
"A PC case compatible mobo would have made it easier for people to build out their own Pi PC. And a PC equivalent needs better advertising so that non-geeks can buy them."
What it needs is a reason for others to buy them, and especially if you don't like Linux, I'm not sure what that reason is. People can install Linux on machines they already have, but they don't. To convince them to buy a machine that can't run the things they are choosing is harder. To do that when you don't even have Linux, with existing GUI applications that do the same things as the applications they want to use, means that, even if I pay for all your advertising, you have to include in the adverts an explanation of why "non-geeks" would buy it. I don't have that answer, and I'm not seeing it in your proposal.