As regards not being able to put modeless dialog boxes behind text
MS probably figured that if you need to be able to see the text, you
can always move the dialog (this is only really a problem with older
macs with very small screens).
They probably got loads of technical help calls from people who had
accidentally put the dialog behind the document window, and then
wondered why the program was in an incosistent state.
Perhaps, from a theoretical point of view, dialog boxes *should*
always be on top of the rest of the program.