Move Munch implementation into gamedef

The Specs engine was designed to be as generic as possible in order to
promote extensibility. The initial implementation of Munch had most of
the code to support it hardcoded into the BattleUnit class (via the
.devour() method), but this is the wrong way to do it when all the
necessary helper methods to support it already exist!