There is a new beta now that supports variant reversi, go and checkers (command line only!) In these variants the corresponding side effects of the moves should be applied automatically.
It also supports multiple moves per turn, through the discussed continuation mechanism: a hyphen behind the move suppresses turn changing, and will wait for the continuation of the move. Only works on moves in WB-protocol format (g1f3 etc.), not on SAN. WB is supposed to accumulate the move before sending it to the (opponent) engine. E.g. after receiving
move e1b1-
move a1c1
it should send
move e1b1-a1c1
to the opponent, (and perform a non-standard castling).
This is completely untested! Unfortunately WB uses fixed-length arrays for storing the moves, so if they get too long (20 char) they will be clipped. To minimize the problem WB contracts moves that have matching to and from squares:
move b5d3-d3f5
would never be used, but contract to
move b5d3-f5
(also untested).
The SAN moves (displayed) will be crap.
Entering multi-moves is only possible by _typing_ the early legs; a move entered with the mouse will always be considered the final leg of the move, and terminate the entry. The display will be updated after each earlier leg, so you can grab an already moved piece to make the final leg. (What happens when your flag falls in this state is undefined...)
Move animation might cause trouble: it only animates the first leg, and sometimes the animation leaves a piece where it no longer is. This is just a display issue; using F2 (flipView) twice cures it.
Pieces can be dropped through the drop menu called by a right-click; you must have set
/dropMenu true for this. This now also works for the first move. (Was not the case initially!

)
Remember, this was just a quick hack job, and likely to be very buggy! The binary is at
http://hgm.nubati.net/WinBoard-4.5.beta.zip