My answer to your first question assumes that you're doing your own mastering, that is, delivering a completely finished piece of music that's not going to get any further processing.
My favorite free all-in-one master bus plug-in is
bx_masterdesk Classic, which you get as part of a bundle of other useful free plug-ins when you register with Plugin Alliance. It has the processors you need, all in one plug-in. Compressor, EQ, limiter, and spatial manager. And some useful presets. Add to that MAnalyzer and MLoudnessAnalyzer from the Meldaproduction FreeFX Bundle and you're good to go.
For you second question, I believe what you're asking is whether after I first get the best mix I can get with no master bus FX I either export that mix as a stereo file and apply FX to the stereo file, or do I just declare the mix "finished" (hah, as if....) and start putting processors on my master bus?
For me, this first of course depends on whether I'm mastering the piece using the same program I used to mix it. At this point, I'm not using a separate program, so I just keep it and start applying master bus FX.
I also image that you want to know the pros and cons I believe are inherent to doing it either way. The practice of rendering it to a file before applying master FX is the traditional one, and goes way back to phonograph records, where it was the job of the mastering engineer to apply limiting and compression to make the music as loud as possible without making the needle jump the groove, and to also apply the RIAA EQ curve, an inverse of which is built into phono preamps. As time went on the role of the mastering engineer became more important, and they started adding EQ cuts and boosts in cases where the music as delivered needed them, as well as other things like spatial width manipulation and even reverb. And if they couldn't solve any mix issues in the mastering process, they'd kick the tape back to the producer and they'd have to do the EXPENSIVE process of trying another mix.
Now, after a couple of decades of pro quality processing being within easier reach of everyone, the philosophies around mastering are changing. Even 5 years ago, the mantra was "never master your own project." The biggest reason for this, assuming that the people involved did have the skills to do it, is that the musicians and mix engineer are "too close" to the finished mix and aren't able to hear it objectively. I guess the magazines and schools and whoever "decides" what "best practices" are noticed that so many of us were ignoring this that they've eased up. Now the idea is to do it that way if you can afford it and your music demands it (you're trying to have a top 40 hit or maybe you just aren't good at applying master bus FX).
This is the workflow that's being imitated. Obviously, if someone else is mastering your piece, you need to do it that way, similar if you're using a program other than Logic to master.
The other reason to do it that way is that there is a school of thought (based on decades of experience) that says that even if you're going to do it yourself, you should completely separate the processes of mixing and mastering intellectually so that you don't do things like chasing your tail going back and forth and adjusting the mix while you're adjusting your master bus processing. Mixing to 2 tracks helps enforce this. Along with this, it helps get out of the pit of endlessly polishing a piece and never finishing it to the point of release or submission.
How do I do it? I can't afford to have someone else do it, so it's a-gonna be me doing the master bus FX. I use the same software to record, mix and master, so it's all happening in Cakewalk. Given that, I agree that there's no real benefit to me to making a separate export. So far, I've confined my endless polishing and procrastination to the composing and mixing phases, and as long as my projects remain trapped there, I don't have to face the question anyway.
Seriously, by the time I get a mix to the point where I think it's "ready," I just start applying master bus processing and keep away from the faders. In the rare event that a sound element is poking out or getting lost, I will allow myself to nudge its fader by no more than 2dB at a time. That keeps me away from the tail chasing.
Having said all of that, there's an even newer school of thought that suggests that mixing with mastering processors on the bus can be okay to do. The idea there is that you call up your favorite Ozone or The One or bx_masterdesk preset, or maybe just a limiter, slap it on the master bus and mix away so you don't have to be concerned whether it's all going to sound too different after going through the limiter (and bus compressor and EQ). When the mix is finished, it's finished and you don't launch another phase of the process.
I see some merit in this notion. However, I do think that taking a day or several days between finishing mixing and moving on to mastering helps give perspective. What I do in practice is work on my mix with the master FX on the master bus but bypassed. Then every so often I'll switch them on for a listen just to check.
YMMV....