Hello, Dave
First I'd like to thank you (and other developers, artists, etc.) for Wesnoth. The game is
absolutely awesome. I played lot's of games and
Wesnoth is definetly is the best turn-based strategy game ever. Despite the fact that this is my first forum post I have been playing Wesnoth since 1.0.
Back to topic.
In short words: I vote for OpenGL with my both hands.
I have some experience with SDL and OpenGL programming. SDL is dead slow (and you know that already). And I think that Wesnoth will benefit from using OpenGL for graphics. Using OpenGL with hardware support you will be able to reproduce current graphics with virtually 0% CPU load.
And OpenGL is hardware accelerated on majority of platforms. That is:
1. Linux, old ATI cards have a nice opensourced drivers
2. Linux, new NVidia cards have good enough closed source drivers
3. Linux, without HW OpenGL acceleration still has Mesa3d which IMHO will work good enough for Wesnoth, at least faster than SDL.
4. Most Windows (and that is the most popular OS anyway

) users will have HW OpenGL acceleration, but it's possible to have some crappy SiS integrated video without OpenGL acceleration (but I've seen this just once in my life)
Perhaps Windows users with SiS video cards will have the worst experience playing Wesnoth, but I think that will happen rarely. Most gamers have NVidia or ATI cards anyway.
Dave, how are you planning to implement text rendering with OpenGL?
Actually I've written scientific plotting library that uses OpenGL and I had problems with font-rendering. There's an article somewhere on the net (i don't remember the link

) that discusses font rendering and OpenGL issues. The best way, which is alse used in most games, as far as I know, is rendering font to texture, and drawing it as a quad with a texture. It work's very fast, gives good-looking results and you can cache produced bitmaps.
But there's a pitfall I'd like to warn you about:
You have to allign sprite pixels to screen raster, so that each pixel of a sprite must be placed accurately at corresponding pixel of a screen or your graphics will appear blurry. Of course you can set texture filter to GL_NEAREST and will work most of times,
BUT NOT ALWAYS.
Sometimes it will produce strange looking grpahics. The textured quad consists of two textured triangles in HW, and texture one triangle will appear shifted one pixel along diagonal of a quad. It looks like crap.
So please design it early in your new engine that
SPRITES SHOULD BE ALIGNED TO SCREEN RASTER or your butiful hand-drawn pixel art will appear blurry or scissored in a half
About textures with a side not beeing a power of two, let me guess... you have a NVidia card, right? That won't work on ATI cards, and you shouldn't expect textures with a side not beeing a power of two to work.
I extended images with blank space so that each side was the power of two and set up texture coordinates so that they pointed to corners of original image.
So If you generate textures this way and align sprites to screen raster everything will look just as beatiful as it is now and will work like 100 times faster.
Also I experienced strange differencied with behaviour of OpenGL on Windows and Linux, but nothing that can't be sorted out. After you will have your engine set up I think OpenGL crossplatform issues won't show too often.
Another thought about OpenGL. OpenGL is quite low-level API, you can consider using some higher level drawing API. But such API are usually toolkit-dependent, like Java2d, Arthur/Qt4 they both works pretty fast. Slower than OpenGL anyway, but require less attention. Of course that will require more changes to Wesnoth then simple port of graphics engine to OpenGL.
Bottomline:
OpenGL - Yes