Merge pull request #254 from BtbN/cmake-fix

CMake fixes for iconv and Freetype finding
Add bug tracker to README and CONTRIBUTING files
Add File -> "Show Recordings" menu entry
Add Help -> "Show Log Files" menu entry
obs_data:  Fix wrong data queried for release

On release of obs_data, if the default/autoselect values pointed toward
a sub-object or a sub-array, it would look up the data for the regular
user value.  (Palana must have forgot to change these functions around
when adding the default/autoselect functionality)
Fix obs_data_item_setdata

It would try to move data from the old pointer even if the pointer was
changed via realloc, which would cause it to copy data from freed
memory.  Instead, just get the position of the data and call memmove to
move it up.
Always create new object when setting a sub-object

Do not use the object returned from obs_data_get_obj to set new
settings.  It could be the default object, which means you'd just end up
modifying the default data, which won't get saved.  Always create a new
object when setting sub-object data.  It doesn't particularly hurt
anything.
Remove unused variable
Refactor log upload to create JSON via obs_data
Remove unused variable
Use fontconfig for linux/mac

This uses fontconfig for looking up font files for freetype to use on
both linux and mac.  It's apparently a bit more optimal and prevents us
from having to worry about the load time on the mac version as well.

Refactored and moved all the old code to the find-font-windows.c file,
as it's no longer used on anything but windows.
Disable OSX app nap

This will hopefully help deal with a particular issue where the program
may go to sleep if it hasn't received input from the user for long
periods, or if a game is running in fullscreen mode apparently.
Fix 'possible loss of data' warning

Qt doesn't like to use size_t anywhere.
Do not draw text from file if file not found
Use better default fonts

On windows, Arial is probably one of the most commonly used.  Mac,
Helvetica.  The rest, Sans Serif.
Don't use informative text for message box

The informative text is meant to be additional information, not the main
information.  If you use informative text without using regular text, it
causes the message box to get all squishy.
Add platform functions to request high performance modes

Specifically, this disables App Nap and related features
on OSX 10.9+
Request high performance mode when using x264 encoder

This should probably be reevaluated once we have
global hotkeys or other functions that would require
OBS to not be sent to sleep while in the background
without having any sort of encoder running
text-freetype2: Fix issues with text file loading
Basic UI: Make properties window remember size