use correct sampgdk defines

this really doesn't make any difference, but it's more convenient that way
update a vehicles color and paintjob value(s) when in a mod shop
use player-class pointer instead of playerid
code improvements
added error checking in natives
added support for random colors in native SetVehicleColor