Perturb mineral

I wrote a little perturb mineral thing and modified step_3 from the tutorial to example_uncertainties.py to use it. What do you guys think? And what do you think about removing 'err_' from all the uncertainty dictionaries?
Also, I think that np.random.normal chokes if the assigned uncertainty for a parameter is zero.  Can we handle that gracefully? 
Either (1), do not perturb for that case, or (2) give a warning and don't perturb for that case.