Fixed abstraction around existing OpenNI 1.x grabber.

This should help with switching between OpenNI 1.x and 2.x grabbers.
Enabled kinfu CMake option with OpenNI 2.
Added OpenNI2 library checks when building kinfu app.
Added fall-through to OpenNI 2 grabber.

If OpenNI 2 is being used, have openni_grabber.h include openni2_grabber.h.
Disabled some kinfu classes that depend on OpenNI 1.x when OpenNI 2 is being used.
Masked oni_grabber errors when the OpenNI 1.x wrapper is not used.
Added conditional compile instead of changing OniGrabber cast type.

Should prevent regression problems when using OpenNI 1.x.
Disabled pcl_record_tsdfvolume when using OpenNI 2.
Enabled OpenNI 2 grabber with kinfu_large_scale.
Refactored obscure kinfu app function names.
Fixed confusing names in kinfu app.
Temp changes.
Fixed MSVC linker crash.

* Linking pcl_features hit 4GB memory limit in release mode. Disabled whole program optimization and link-time code generation as a workaround.