Clean up CMake library specification

The X11 libraries don't need to be specified when doing dynamic linking
Build GLFW as a shared lib on Travis
armemu: Narrow the scope of some variables in handle_v6_insn

There's no reason to have these in the outer-most scope.
armemu: Combine SSUB16, SADD16, SASX, and SSAX.
SaveData: Implemented the SystemSaveData archive.

It will be stored in the /syssavedata folder. This archive is user by various Services and possibly games via the FS:U service.
Merge pull request #299 from lioncash/join

Combine SSUB16, SADD16, SASX, and SSAX.
armemu: Set GE flags correctly for SSUB16, SADD16, SSAX, and SASX.
armemu: Get rid of bitwise parenthesis warnings
armemu: More concise names for USAT16-related variables
SaveData: Added some documentation to FormatSaveData

We still don't know what the other parameters do, but they appear to be very similar to those of FormatThisUserSaveData.
Most likely FormatThisUserSaveData is just an alias for FormatSaveData with LowPathType Empty
armemu: Fix lower-bounds clamping for USAT16
SystemSaveData: Added a TODO to move it to the NAND.

Maybe sometime when we actually implement that
Merge pull request #301 from Subv/more_savedata

SaveData: Implemented the SystemSaveData archive.
Merge pull request #307 from lioncash/usat16

armemu: Fix USAT16.
Merge pull request #304 from lioncash/sflags

armemu: Set GE flags properly for SSUB16, SADD16, SSAX, and SASX.
SystemSaveData: Fixed a typo that was segfaulting
Merge pull request #308 from Subv/more_savedata

SystemSaveData: Fixed a typo that was segfaulting
GSP_GPU: Shut up FlushDataCache
armemu: Clean up naming and formatting for SSAT16
armemu: Fix SSAT16

The lower-bound would never be negative like it should