Screen Recorder: squashed: Add native java screen recorder [1/2]

This is based on the screenrecorder binary found in frameworks/av.
It has been converted to a native library with the necessary jni
hooks for interfacing withit via a ScreenRecorder java class.

Volume up + power chord is used to start and stop recording by
binding to the service found in the ScreenRecorder app:
https://github.com/ChameleonOS/android_packages_apps_ScreenRecorder

PS1:
Clean up white space.
PS2:
Fix naming convention for state field.
PS3:
Rebase
PS4:
Post mScreenRecordTimeout with 1000 millisecond delay instead
of 10000.
PS5:
Send record screen broadcast instead of using the service
directly.
PS6:
SCREEN_RECORDER_FRAMERATE should be SCREEN_RECORDER_BITRATE
Carbon PS2:
remove vendor_strings, merge cm_strings.xml.
Carbon PS3:
Fixup, duplicate removal
Carbon PS4:
More fixup, missing variables
Carbon PS5:
Gah, more missing things...
Carbon PS6:
Let's try this over...
Carbon PS7:
I spose another change required this update
Carbon PS8:
Fix derp in Settings.java
Carbon PS9:
Fixup, merge conflicts

Change-Id: I5b7af9b4b4f24a8c54ac0f9dcb36ace16672e2cf

Screen recorder: add ability to record audio from mic [1/2]
Change-Id: I2422a3c651e469bc9ffeb6b101f43e145dc5de85

Add global action for screen recording. [1/2]
PS4:
Send record screen broadcast instead of using the service
directly.

Change-Id: Ie6d4655b074992075df0060d23c758f2af06387e

SystemUI: Add RECORD_AUDIO permission - xplodwild
Change-Id: I5af3cbe31f182c8b5cf1633aaf8a16db2856a425

SystemUI: Add missing sound permissions for screen recording - xplodwild
Change-Id: If948aabfd5c2e09f192f12aa02830d39346d2c6c