I'm trying to create the basic infrastructure to work on an engine that plays atomic and suicide chess. XBoard protocol supports them (you can enlist the variants that the engine plays and you could instruct the engine to play a certain variant), but as far as I know this support is neither part of UCI, nor have I seen any engine to support it in its UCI implementation. Should I go for an XBoard implementation or is there anything I missed?

As for testing I would like to make offline tournaments and also have it play on FICS - I suppose it is sufficient to implement XBoard and I can do both.
I'm thankful for any insights you could give me on protocol implementation and testing.
Cheers, Balint