PERF: Parallel streamline was slow. Fixed.

vtkPStreamTracer was causing the creation of a new locator at
every iteration (task), which is very slow for cell locators
since they have to bin data every time. Fixed by removing
the reallocation and using one locator. The input data does not
change between iterations so recreationg the locator was totally
unnecessary.

Change-Id: I966f25caf2e05ba08355a426f3e31f1ac66517ef
ENH: Provide PlaybackFile for recorded interaction events

Many of the Widget tests supply in-code event logs. This patch adds
an additional option to vtkTesting::InteractorEventLoop. The new
option, --PlaybackFile, supplies a file name for the
InteractionRecorder. This allows tests to modify the playback
events without changing the source code for the test. This separates
changes to the playback events from changes to the test code.

A couple of tests have been modified to illustrate the usage of the
InteractorEventLoop.

In the future, the current widget tests should be changed to use the
InteractionEventLoop rather than ifdef'ed code for playing and
recording.

Change-Id: I6aa2afd7c161fe82646fc1df7d326ca8a3249a2f
Merge topic 'fix-locator-recreation' into master

f82238ed PERF: Parallel streamline was slow. Fixed.
Merge topic 'RestoreInteractionWidgetTests' into master

eb1a585d ENH: Provide PlaybackFile for recorded interaction events
Redesign "vtkGhostLevels" arrays and related ghost functionalties.

-The semantics of each unsigned char in the ghost arrays changes:
  Instead of storing a numeric value representing how far a cell is
  from the boundary, it is now a bit field specified by
  vtkDataSetAttributes::CellGhostTypes and
  vtkDataSetAttributes::PointGhostTypes.  The bit field is consistent
  with VisIt specs.

- Previously, filters strip all ghost cells they request from upstream
  before finalizing the output. This is no longer done.

- vtkUniform grids previously supports blanking through member arrays
  vtkUniformGrid::CellVisibility and
  vtkUniformGrid::PointVisibility. These arrays are removed and the
  blanking functionality are supported through the new ghost arrays
  instead.

- the "vtkGhostLevel" arrays for cell and point data are renamed by
  vtkDataSetAttributes::GhostArrayName().

Change-Id: If5ff516c0fb0b321aa9e0fcc8cf7e74f05e2b250