Merge pull request #21 from nsf/master

Minor warning fixes and clang support.
Upgraded thirdparty stb_image.h (1.38 -> 1.46)
Removed some warnings in demo code
Disable -Wunused-function for stb_image.h

Unfortunately it doesn't work for gcc, the only way to stop these warnings in
gcc is to use attributes. But since stb_image.h is a third party dependency,
modifying its code is discouraged.
Silence unused function warning in glfw portion of the demo app.

This function needs to be defined only starting from a certain version of the
GLFW, where it can actually be used. It's the drag'n'drop functionality.
Fix utf8 backward movement bug. Fixes #22.

The 'i' was used in comparison as a pointer here by mistake. However the
caller of this function relies on it returning negative values. Therefore we
allow it to slip to -1 now.
Enable -Wall -Wextra -Wno-unused-parameter on gcc and clang. Fixes #23.

At the moment gcc still generates a bunch of warnings on stb_image.h, but we
can't workaround that easily without modifying the stb_image.h itself, which
is a third party code.