I got inspired!
So I made my own version of A* in Alice based on an older A* project I made in VB.net.
It can go diagonally, but it won't cross edges diagonally, that would've hurt!
It is sable and I haven't seen any bugs so far.
I do also think that it is abit faster that your version.
Hope you'll get the use of it