Kinect2 OpenNI2 driver: First driver port

First driver port based on the Kinect OpenNI2 driver (first version of the
sensor)

Videomodes supported:
*Color: RGB888          1920x1080 30fps
*Depth: DepthPixel      512x424   30fps
*IR:    Gray16 (ushort) 512x424   30fps

Features supported:
-Depth & color registration mode
Kinect2 driver: Playing recorder Kinect2 color stream crash fixed

The color stream (1920x1080) is too big to be handled by the OpenNI player.

This change partially fixes this issue adding a videomode of size 960x540.
Making use of such videomode both OpenNI recorder and player works fine.
Kinect2 driver: Common base timestamp for all streams

This change initializes a base timestamp at device creation time. Such timestamp
is used in the stream implementation constructor so all the different streams
uses the same timestamp basis.
Kinect2 driver: Refactor and cleanup

The code has been refactored and cleaned-up. It seems the driver works well now
and does not make the GPU driver to crash.
Kinect2 driver: Depth map interpolation when DEPTH_TO_COLOR_REGISTRATION

When using DEPTH_TO_COLOR_REGISTRATION some vertical gaps remains due to the
different aspect ratio between color and depth images. This change solves the
problem adding a vertical interpolation on those empty pixels using a kernel
of diameter 1 cell.
Kinect2 driver - Bug Fix: Wait some time after opening the Kinect sensor to let the
                          Kinect service to start

Open() call on an IKinectSensor starts the Kinect service, but it takes some
time to initialize. If get_IsAvailable() is called right away, it will return
false. Waiting half a second after calling Open() is enough to let the Kinect
service properly initialize and get_IsAvailable() will return true if an actual
Kinect v2 sensor is connected.
Kinect2 driver - Cleanup: Replace all tabs by 2 spaces + remove some trailing
                          spaces
Kinect2 driver: Add README file
Merge branch 'kinect2_driver' into dev