To the First:
That's odd, I get a -0 most of the time when using sinus on an angle between 180 and 360
However using it in events seems to work... just displaying as negative number results in a -0 or when animated it flickers between -0 and some strange wrong number (up to -9,837485 something). Sometimes with e's like 0,34e2745598, most of the time just -0.
To the Second:
KeyDown was not the problem. When accelerating over a longer period the shaking stops until you release the upkey. The friction works wrong , I suspect the angle command in the beginning.