Fix for installing parts to vehicle duplicating part

So, playing with my main file I realized that when you attempt to install a part to a vehicle from outside of your inventory, you have a chance to duplicate the installed item by attempting *again*, without moving, to install the part once more.

The issue occurs because the cache crafting_inv (of which the parts list to install is made from), does not update because the player has not moved. You'd figure since the turn was different...

So for now, just a minor fix so that while in a vehicle the cache is refreshed, disallowing duplication.

That's all!

-Davek

(P.S. I did a reset on the branch since I made some changes that broke map::unboard_vehicle (lol), so I reverted those and thus a million branch merge messages appeared! However the diff looks fine so I'm putting in this PR.)
You could just invalidate the crafting inventory when the vehicle work has finished, there is function for this, just some lines below. The bug appears whenever some part is removed, repaired (item that replaces a completely broken part is consumed, tool charges), or added. Probably also when siphoned or drained.

The current change will disable the cache completely when the character is inside a vehicle, but will change nothing when the character is outside of the vehicle. Neither has any relation to working on a vehicle. I can work on vehicles from inside of it and from outside of it, I can also just look at items or open the crafting screen when inside the vehicle (in this case the cache is disabled leading to lag).

Also: what flags? `map::veh_at` already uses a cache.