avfoundation/camera: add a new Camera provider for OSX, based on avfoundation. Should work on OSX >= 10.7.

This is a base for a future work, such as iOS support (AVFoundation is
still the same, so it should works out of the box, we just need to
activate setup.py for iOS as well.)

Also, capabilities are globally missing in Kivy, so we cannot query the
device for some informations. Once we improved the core base, we can
activate the code related to capabilities here.

This part of the code has been first written using Pyobjus, but
objc-protocol was not implemented, i started to rewrite from scratch
using AVFoundation tutorial. Then i found OpenCV implementation, on
which some part of this initial code is based.
avfoundation: activate avfoundation camera provider only on OSX >= 10.7

closes #1369
closes #1053
closes #65