Think you could implement something where if the player taps a direction he faces it and if he holds a direction he moves? It would make it a little easier for me. Other than that, I love your script!
Edit: just realized that script snippet makes the player face left with at a 45 degree angle. I meant something that rotates you. Like imagine you're standing in place, and you tap left one and go 45 degrees, than again, and after a few times you've done a 360.