An Upwind, Kinetic Flux-Vector Splitting Method for Flows in Chemical and Thermal Non-Equilibrium