a bit more robustness in building ids
After interpolation, build a real TransientVariable rather than trying to take the difference of
a TransientVariable and numpy array.  Thus we have masks where values are missing, and that means
correct behavior (i.e. ignore it) at endpoints.
bug fix: Don't synchronize the ranges of model/obs values with those of model-obs difference,
 in plot set 3.
Also some minor output added.
Update synchronize_ranges.  Before, it assumed that a reduced/derived variable id was like name+suffix.
Now the id is parsed a little better.  What we really need to do, though, is a complete revamp
which uses the new id class's tuples, not strings.
Check on opts['plots'] to make sure the user wants plots, before making a plot.
Merge branch 'devel' of github.com:UV-CDAT/uvcmetrics into devel