I agree that it is a pity that the scripting system was crippled.
I think it had to be crippled once it was there. Too much complexity. It should have been just the standard transaction types to begin with. (Though I would have liked a "user data" field for extensions)
The MAST system would have been a big improvement. You pay to a MAST hash. All the complexity is on the spending side.
To prevent people using the MAST hashes as messages, there would need to be a way to encode pruneable data too.
I haven't put thought into this, but that does sound like it could have been an improvement. Is there a benefit to MAST over the current Pay to Script Hash concept?