Pokemon must faint when exploding on Ghosts

Change the rollMoveHit function so explosion and selfdestruct 
always faint the user. The only exception is when a Substitute 
is fainted.