ENH: Added MRML node property macros
Added macros for reading, writing, copying, and printing MRML node properties.
It reduces amount of copy-pasted code and also allows higher quality implementation. For example, all special characters in strings are now properly encoded and error handling of reading enums or numbers is improved.
Updated vtkMRMLAbstractViewNode and vtkMRMLCameraNode to use these macros. In the future, more nodes should be updated in a similar way.