Good game! nice variety of worlds, power ups and enemys.
try to learn some basics of trigonometry for games.
Like have you noticed that when you walk diagonally you move faster? For example when moving north-east (up and right arrows), the sum of the 2 vectors:
vectorRight(1, 0) and vectorUp(0, 1) = (1, 1).
The magnitude is now = squareRoot(2) and not 1, so you move faster. The solution is to normalize the resulting vector to keep its magnitude / velocity of the player at 1.