Add support for diagonal movement
Add support for diagonal movement

Diagonal movement per vanilla nethack (and all known variants) rules.
No rolling boulders diagonally and no squeezing between boulders and/ or
walls diagonally. This means that diagonal movement is purely saving
keystrokes/turns over cartesian movement, since the cartesian-valid
paths must exist for the diagonal move to be valid.

hackedhead/nhss