Uhm, I don't know physics all that well, but how FS2 does it is this...
It has the current velocity stored in a vector. ( vector = X,Y,Z values).
It then has a second vector, that determines the desired velocity. When you press '\\', you set this vector's z attribute to the max speed of your ship.
Finally, other values determine how fast you can change your current velocity to the desired velocity. So if your Max Decel Rate is 10, and you're going 50 m/s, and you press 'stop', FS2 will set the desired velocity vector z component to '0' and linearly subtract 10 from your current velocity every second.
Now, in a flash of memory, I remember I was poking around in the code once to try and get Newtonian physics to work, and discovered that what Freespace 2 seems to do is apply the velocity according to the rotation of the ship in world space. I think I got it half-working by removing the function to rotate the velocity by the ship's orientation, but had trouble applying thrust according to the current orientation of the ship (Because everything outside of physics assumed that the z component of the current velocity vector would be 'forward' for the ship; without the extra rotation calculation, it would actually be 'forward' in world space. So if you press '\\', your ship might immediately start moving up, sideways, diagonally, or whatever if you turned at all, or the mission designer turned the ship in FRED.)
So to get complete Newtonian physics, you'd probably want to go and add some special member functions to the 'ship' or 'object' class that would automatically compensate for Newtonian and non-Newtonian physics, then modify the rest of the code to use those functions. Fairly straightforward, but it'd probably take a medium amount of time.