When this was planned, Linus came with a simple argument himself that basically puts it down. It's not so serious deep or earth-shattering: (approximate version follows)
"We have two interfaces, git-foo and git foo, and since aliases can only be called with the second form, and flags like --no-pager or --bare can only be used with the second form, the first form can never be the only one allowed"
That, combined with a will to have one and only one way to do it (usability) basically puts it down how it's going to be.
Git needs consistency, only then "normal" people can apprieciate its complexity.