Changed movement mechanics to use flags for active directions instead of
adding vectors together. This solved a bug that would cause the player's
movement vector to be set when releasing a key if pressing that key had
not emitted an event.