Adding framework support for sending notification messages.

Notification messages are meant for sending messages from server-to-client. This
commits adds a framework for sending arbitrary notification messages to the
client.

Change-Id: I010776c4cc3f008f52dab64d0b0167740ca6a9b8
Started working on framework for live-insitu analysis

Change-Id: Ib3d6b0f19ecc0373f10ff2af5ea03975cf4e8224
Laying the groundwork for live-insitu.

Change-Id: I4674786f713d37e2be92fde907ff2ccf4d834046
Making vtkSMDeserializer and vtkSMProxyIterator be vtkSMObject.

These were subclasses of vtkSMSessionObject, but that doesn't make much sense.
That makes for twisted API and hard to use these classes when no session is
present. So fixed that.

Change-Id: Ie9f9feae91547cfdb11ff8bf412fae9d78aa52cf
Making ProxyManager work with NULL session.

Change-Id: I344fb31e93b02df29548817b84545914145da705
Adding mechanism to push state changes from client to SIM.

Change-Id: I9d06eca9d9eb356ed679a748bc7bd9a8a1005869
Fixed tags.

Change-Id: I12d62f729072870b74725a415a1a1743d0e05a69
First pass at delivering extracts.

Change-Id: I8f053c694c548064c968cd3ad4fda94575845c1c
Working basic insitu.

Next revision:
* can create/update vis and insitu pipelines.
* icons in pipeline browser.

Change-Id: If44511b96f20bc4e572725e79c628f470df91e68
Handle case when extracts sent don't match extracts expected.

That can happen since the state on the coprocessor may be a little stale.

Change-Id: I96a94bc8b6b7e5e735328a88af7373dcf17e99e6
Added support for parallel pvserver/co-processor.

vtkLiveInsituLink now works in parallel.

Change-Id: Ie1791d764f831131e24553174cf780a15fadc331
Added support for transferring data when num sim nodes > num of vis nodes.

Change-Id: I65086ce80c424bef40eefd2d5af77611b6da4db0
ensure catalyst recations is enabled correctly.

Change-Id: I96bb3cd58a96e16d7bf225d748524d90878901c1
Added support for removing extracts.

Change-Id: Ied21237c8f28b751ff5e85b43c5f25851cfe233c
Added support to timeout remote connect requests gracefully.

Change-Id: I59c57fd557af1fc31a749c9e66ce1a4437f24c6f
Started adding some stub to handle broken socket connections.

Change-Id: If560a2a26bbf43de2aca4d4123d4d9f7838bc2df
Moving around code for reusability.

Moving helper code from vtkMPIMoveData to vtkMultiProcessControllerHelper so
that other classes can use it too. Since vtkMultiProcessControllerHelper was in
VTKExtensions/Rendering, moving it to VTKExtensions/Core. That meant, we have a
to add a few more module dependencies for VTKExtensions/Core.

Fixed vtkExtractsDeliveryHelper to use vtkMultiProcessControllerHelper for the
helper code that was moved to vtkMultiProcessControllerHelper from
vtkMPIMoveData.

Change-Id: I9bf0c95ca16db98205ca6a0d6ca0bb6061eb5628
Add option to prompt user for the port number for Catalyst.

Change-Id: Ib1482e4de5aa7aa0930377a1b9d8391349f07d13
Extending error handling suppport.

Added vtkCommunicationErrorCatcher to catch errors raised by
controller/communicator. vtkLiveInsituLink uses the vtkCommunicationErrorCatcher
to detect error in communicating with the ParaView Visualization Engine. On
communication errors, the connection is dropped and a fresh attempt is made to
connect to ParaView on subsequent call to SimulationUpdate().

Change-Id: Ie1045aaa32cf65f11a97275e6c78a0ecc51bd010
Working on cleanup connection on Catalyst disconnect.

When Catalyst disconnects from ParaView, we need to clean up the Catalyst
session show to the user. The user is prompted to notify that Catalyst
disconnected (in future we may add support to save state) and then the Catalyst
session is cleaned up.

We don't remove any extracts that the user was visualizing. Those can be
manually deleted if no longer needed.

Change-Id: Ie018e763057a82262e80e806f740006d11570c45