gof_plot: Fix trace check

Running examples/disaster_model_gof.py fails with

  Traceback (most recent call last):
    File "/home/kyle/src/python/pymc/pymc/examples/disaster_model_gof.py", line 90, in <module>
      pm.Matplot.gof_plot(disasters_sim, disasters_array, 'disasters')
    File "/home/kyle/src/python/pymc/pymc/Matplot.py", line 844, in gof_plot
      uniquevals = len(unique(simdata))
    File "/home/kyle/src/python/numpy/numpy/lib/arraysetops.py", line 170, in unique
      ar = np.asanyarray(ar).flatten()
    File "/home/kyle/src/python/numpy/numpy/core/numeric.py", line 512, in asanyarray
      return array(a, dtype, copy=False, order=order, subok=True)
  ValueError: setting an array element with a sequence.

This is caused by the array of trace values not being extracted from
`simdata` (it is still an instance of `PyMCObjects.Deterministic`). Now
`trace` is called unless `simdata` is a ndarray object.

This may fix Issue #568, though it doesn't fail with the same error.
Merge branch 'pymc2/gof_plot-trace-check' into 2.3