All of your events are firing together. There is no condition to stop the individual button events firing at the same time as the multi-button events. E.I. - When you press W and D, the event for just W, just D and both W and D all fire causing your character to rotate for all these events at the same time. There are definitely better ways to handle this but given the events you have, if you just order them this way (notice the else statement which ensures the events won't fire over each other) you should see the result you are looking for.
Put the double key events first so the single key events don't get caught first and block them.