update formula for wesnoth

The new formula uses scons instead of cmake, as that is much
better supported by us (our cmake recipe is sometimes not well
maintained.)

It also adds some missing dependencies, and is fixed to use the
keg-only gettext.
See my other comment - this will never evaluate to true because `:x11` the symbol is always true.

This logic can't be here though - since it's at the class level it would be evaluated whenever the class is loaded, which would result in very strange output for operations that load all formulae (`brew outdated`, `brew doctor`, etc.)