vtkPythonCommand - Add support for additional call data types

This commit extend the mechanism added in 9366ca67 to support additional
data types.

Supported types now includes 'string0', 'vtkobject', 'int', 'long',
'double' and 'float'.

Also added
 (1) convenience decorator 'set_call_data_type'
 (2) test checking CallDataType can be associated with observer callback

See inlined comments for more details.

Change-Id: I8b27ccca63b9a5a30e7a0cedda2b789f8f66e0e5
vtkPythonCommand - Fix indent and variable names

Change-Id: I7683ccf508906d3facd7e618eaaa5140e2d87c99
Merge topic 'python-command-support-additional-call-data-types' into master

176861d8 vtkPythonCommand - Fix indent and variable names
50d601bd vtkPythonCommand - Add support for additional call data types