Integration of custom VTK edition

This integrates a [custom VTK/ParaView subset](https://github.com/ufz/catalyst-io.git) currently containing `vtkXMLIO` and all its dependencies as well as the foundation for [in-situ visualization](http://catalyst.paraview.org) (ParaView's client/server implementation) as a CMake ExternalProject if it is not installed system-wide.

The compilation takes under 5 mins (on 2 cores) for the CLI config for me. Have a look at the [developer guide](http://docs.opengeosys.org/docs/devguide/advanced/third-party-libraries) on how to install ParaView once on your system. Alternatively you can have VTK 6.1 installed on your system.

A so called MappedMesh is implemented which gives VTK direct access to OGS mesh structures. See *TestVtkMappedMeshSource.cpp* for an usage example. For now, elements values are accessible as a cell data array with the name `MaterialIDs`.

### New requirements

- VTK 6.1 **or** ParaView 4.2

----
- CMake 3.0.0 if you have none of the above and the custom ParaView edition gets build.

### Things that are not nice

- On Windows parallel builds are not very efficient but you can make use of [Ninja](http://martine.github.io/ninja/) to speed things up (it is automatically used if the ninja executable is in the PATH), **but** Ninja builds only the Release config so you are not able to Debug ... so therefore this is disabled at the moment.

### Links to custom edition code

- [CLI edition](https://github.com/ufz/catalyst-io)
- [GUI edition](https://github.com/ufz/catalyst-gui)
- [ParaView source with edition generation scripts](https://github.com/bilke/ParaView/tree/ogs/Catalyst/Editions/ogs)

This PR is related to #213, #55, #196.
In VtkMappedElementDataArrayTemplate, pointer is passed. is it possible to make the argument consistent?