I also feared them prior to using and writing my own config. But later, I found out they have packages that highlight different parentheses depth with different colours (rainbow-delimiter), auto insert missing parens (parinfer) and whatnot. This makes the process of working with them a lot easier!
What you are describing for the master-sleve layout can be achieved with either, XMonad.Layout.Grid or Tall layout (more likely, other ways to achieve this).
The stack layout on the other hand can be achieved through the XMonad.Layout.Accordion? And if you are not a fan of that you could always refer to the XMonad.Layout.Tabbed.
Extra:
mirror functionality where you can rotate your layouts. Mirroring XMonad.Layout.Tabbed results in a stack-like layout.
Do you have an image at hand that showcases that layout? The only images I am finding from a little DDG'ing are similar to XMonad's XMonad.Layout.ThreeColumns, but I am not sure if that is what you are looking for.
Another (new) Emacs user here, I managed to reduce Emacs startup time to 0.6s - 0.5s on my garbage hardware. Some Emacs users have even manages to reduce the startup time to 0.3 - 0.2 seconds!
Also, launching Emacs in --daemon mode makes creating new frames instantanous and because of it you won't experience any form of lag when using Emacs!
At this point, it would be insane to classify it as a text editor only. I personally refer to it as the "Emacs distribution"; a distribution that happens to have its own integrated text editor and other useful tools. But a more accurate description is, Emacs is an e-lisp interpreter and because of this it's a very extensible tool!
I also feared them prior to using and writing my own config. But later, I found out they have packages that highlight different parentheses depth with different colours (rainbow-delimiter), auto insert missing parens (parinfer) and whatnot. This makes the process of working with them a lot easier!