Ok, so I actually starting writing this renderer several days ago and I think i've gotten a faily good starting point.
A few general points on the platform:
* Cross platform C++ code
* SDL for windowing
* Visual Studio C++ 2005 IDE/compiler
Progress thus far...
I began with a fairly good idea of the kind of framework this renderer would sit in. I didn't want to deal with anything lower level than filling in the colour of pixels in a window, so I opted to use SDL and its windowing/surface filling functionality. It also has the added benefit of being cross platform (not to get ahead of myself or anything).
The next thing I needed was a good math library. I didn't want to write a new math library from scratch (boring).. but I also didn't want to take the easy way out. The compromise was to rip out the math code/pseudo-library I had written in a previously failed attempt at an OpenGL game. The code was by no means a complete math library, it only had classes for Vector2, Vector3 and Matrix4x4, but it was a decent starting point and allowed me to bypass the boring early stages of writing a math library.
To be continued...
Best of luck!