D2k: Sandworms implementation

Using Mailaender's code as basis, this is my implementation of the sandworm behavior. It is still WIP, but you can get an idea of how it looks from the shellmap.
As I mentioned in AutoTarget, `CanAttack` should really be accounting for `AttackRequiresEnteringCell` itself, and returning false for `CanAttack`.  That should allow you to remove `CanAttackAtLocation`.