Do yourself a favor and get a normal PC (normal as in Windows).
Hehe, for an increasing number of people the "normal PC" is the Mac, whereas Windows is the unstable, slow and fiddly thing of the past. I have a bunch of vista boxes sitting in the closet and the idea of using them for anything is a nightmare that makes me wonna cry
More seriously now: I'm just a beginner hobbyist in electronics but have a 15y old career in Software eng. I have developed software in all the popular platforms and then some, and I can honestly say that the xcode platform on the mac (which is really a unix OS with a nice UI and extensions) is by faaaaar the most advanced AND user friendly IDE for software dev. And I'm not only talking about code completion and other similar features that everyone has, but for a collection of highly sophisticated static analysis and profiler tools that help the average Joe truly optimize their code. And they are so user-friendly that it makes you wonna cry. No one else offers this degree of sophistication in their IDE, while it comes for free with any modern Mac.
xcode uses the gcc compiler so pretty much any hardware can be targeted, has assembler/disassembler, linker, debugger, etc.., etc.. Of course, the problem in question is how to integrate JTAG, which is an area that I'll have to investigate further. The argument on spending time on setting up the toolchain rather than learning to program the cortex does not have a straight forward answer. Having a good toolchain in place is guaranteed to speed up development in the long run, so in my opinion the time spent in setting up a good environment is an investment. But I'm sure people can argue either way
Anyhoo, I now understand a bit more about the process and thanks everyone for your input. Reading the documentation from Keil, IAR, and Crossworks were the best pointers, ironically.