Fix an issue with async (video) source destruction

obs_source_output_video can cause cached frames to be freed twice if
called with a partially destroyed source, among other undesirable
effects; freeing the source private data right after the destroy signal
has been processed ensures proper behavior
obs-source.c:  Fix a few potential concerns

First, if the private data of the source fails to be created, then do
not destroy the source.  If the source is destroyed, all the user's data
associated with that source is lost, which could end up being a
potential problem.  Instead, let it linger as a 'dead' source until the
user chooses to fix the problem (though this should never really happen,
the source module functions should be programmed to handle this
scenario)

Secondly, rename new_frame_ready to ready_async_frame, and fix a
potential memory leak with it.
Update libobs to use semantic versioning (0.2.0)
Minor cleanup in mac-avcapture
Bypass time conversion if AVCaptureInputPort has no clock

This should add compatibility for OSX < 10.9
Request global headers from ffmpeg aac encoder

FAAC and FDK AAC don't populate AVCodecContext::extradata{_size} unless
CODEC_FLAG_GLOBAL_HEADER is set
Update OSX dependencies for cmake generators other than ninja/make