I think your directional movement code might be bugged! It's impossible to drive forward south while the car is facing south :P
From what I can tell, I think your current movement code could be reconstructed something like this:
angle = (variance from facing north, ±180 degrees)
xAcceleration = angle * speed * upInput
yAcceleration = ( upInput * speed * (180 - |angle|) ) + ( downInput * (|(angle - 45) % 180| - 90) )
...which has some odd quirks like the fastest way to go north being to face south west and press both the up and down keys, lol.
You probably want something more like:
xAcceleration = sin(angle) * speed * (upInput - downInput)
yAcceleration = cos(angle) * speed * (upInput - downInput)
Anyway. The game 'packaging' gave me a chuckle, that's for sure!