I've just about finished getting it to be multi-codec aware, and adding a new codec (that can't currently be played in XBMC - it's lossless)
Ofcourse this new codec is gapless just like mp3.
Replaygain support is getting there as well. It currently reads from the LAME tag or from the ID3v2 tag, but most apps use a different sort of tag for this data which we currently don't read.
As far as other codecs go, we won't be loading winamp plugins - they're just not coded in an efficient way for gapless playback. We might be able to use the source to fairly quickly add the codec in a better way, however.
And no, a "gap-removal" output filter is not going to be added - they just don't work well enough to be bothered with them. I believe there are utilities out that may be able to detect the start and end offsets of the mp3 file and write the gapless header - it's something worth looking into, anyway. The issue is that different encoders have different delays. Once the start offset has been found, it's not too difficult to find the endoffset (as it needs to be a multiple of the frame size of a CD - 588 samples.)
XBMC will not be adding that sort of thing - the plan is to just play what we are given and nothing more, nothing less.
Cheers,
Jonathan