Prevent usage of pseudo items from vehicle parts

Adds new parameters and functions to inventory to check if counted items are to be used as tool or as component. If used as component, it checks for a flag PSEUDO. If that is present it ignores the item as it is a pseudo item that does not really exist.


Use with care, not extensively tested. I may have confused the has_tools and has_components function somewhere.

Fixes #2439