Neat little demo :)
I did notice that moving in two orthogonal directions at once (i.e. up + left) causes the character to move faster.
If you want to fix this you could normalize your movement vector.