I don't think you understand how GUIs work... Please look at the picture on the top of this page: http://web.mit.edu/qt-dynamic/www/qt-embedded.html (I did a quick google search to find something to illustrate my upcoming points). Don't get caught up on the fact that this discribes QT, the basics hold for QT/KDE/GTK/Window/etc. Each level of the diagram represents a greater level of abstraction from the actual hardware. In other words, everything builds on top of everything else. The low levels provide the communications to specif hardware, while providing more general APIs to the next layer. That layer provides even more generalized APIs to the next layer (so on and so on). Each level provides functinality necessary to enable the GUI environment, along with a set of common interfaces in both up and down directions. In today's computer environment, applications use the most generalized set of APIs in the computer environment.
What does this mean? It means if you want to run *just* and application -- it needs to create all the layers below it. That makes application development significantly more difficult. It would result in fragment interfaces, terrible memory management, long development cycles, etc, etc. Do developers do this? Sure, if you have a very controlled enironment with limited hardware capabilities -- but that really isn't the case any more.
So all that said, you will need something like Xorg or Wayland. You will need a WM (there's a lot out there). And for what you want, that's not a bad thing... You realize that the browser application requires a WM (unless you are running a terminal browser, which isn't what you described). For a slim WM, take a look at ratposion. Another nice WM is E17 (enlightenment). OpenICE essential was it's own WM with apps running on top.
BTW: Windows has a WM, it's just embedded in the OS -- and it always runs.