Model to nominal and tolerance to standard fits (symmetric, bilateral, MAX, etc.). Why? There are two reasons.
1) You can perform an interference check with coincident faces considered as interference. This will allow you to quick identify, check,and update the fit of nominal interfaces.
2) NC programmers can provide an offset which will leave or take more material. This can be implemented at any point in the code. So if the overall size of your part is +/- .005" they'll run the cutter nominal. However, if you have a internal profile that needs +.002"/-.000 they'll run the rough nominal and run the finish pass nominal with a .001" offset. The point is tolerances are easily programmed by a capable NC Programmer.
Be consistent and work with your vendor and they will make the parts right.