refactored Kinect v2 control command functions and implemented c++ api

this PR introduces quite a lot of changes:

- refactored functions sending control commands to kinect into separate classes (fixes #5)
- moved usb control transfers to dedicated class
- added class for library initialization and device handling
- reduced Protonect.cpp to simple main, which calls the c++ api and displays images

the c++ api can be the foundation for the c api introduced in #12