DSPManager: Save and load presets from external storage

This patch adds a "Load preset" and "Save preset" option to the
menu of DSPManager, so they:
1) Survive a wipe
2) Can be swapped as you swap headphones, without having to re-do
   all your settings

Change-Id: I67ba7482404544ca99589830599c091ceb1f3b7c
Update icon to a more googley icon

Change-Id: I06c6fdbfe13abbd95e0264f36a870e2bfcd335c1
[2/3] Effects: Add center frequency param to bassboost

Change-Id: Ic082790010ed9e9abaf0e3249034322234119c66
[1/3] Effects: Add a stereo widening effect

Based on self knowledge.
Aside from the filter, a HighPass method has been
added to Biquad in the DSP library

Change-Id: I5dc8afa75cdf179c71ec38359887be9a5a60d4bd
DSPManager: FR translation

Change-Id: Ic569014a42e1fcdf1f8029364aebd8f03d966fad
Control Faux123's Sound Control Kernel Modules

Preview:
http://goo.gl/PQNPdH

Allows to control Faux123's Sound Control kernel feature with
DSP Manager.

If modules are found, it will show the tab, otherwise not.

It is able to apply values, load presets and restore the
values on boot.

Supports Sound Control version 2.1, will support higher versions
once they are tested.
They can be enabled easily afterwards.

Change-Id: Idf44b0341e762cbe75bef8b586a4df4765ddcbae
Make DSPManager persistent service

This application must be running at all times, so that it can respond to
AudioEffect intents and manage audio sessions. Some users complained about
DSPManager not always managing their audio sessions, and I saw that
Android sometimes kills the DSPManager process and then ends up restarting
it mere seconds later. This is a likely cause for the problems, because
DSPManager will forget the IDs of the audio sessions in a restart.

Change-Id: I1415326102e601601b22d7b388e03b75e4a19aac
Sound Control: fix applying wrong values on boot

When rebooting, DSP Manager restores the RAW values instead of the
ones, with the offsets applied.
This causes the values to be terrible high.

We prevent this issue with applying the offset when writing the
value instead of applying it when saving the value as preference.

Change-Id: Ib935a041cde0a3fdd0280f1fa41ffd13eac8fee4
DSPManager: better IT translation
by ale8530

PS2: Dottie

Change-Id: I3658cea4b0443b72545eb6a58f99405711a615f6
sc: Fix Speaker derp

We applied the wrong value to the speaker in preferences as
we called the wrong method to read the speakers value.

fix the method call, get rid of our troubles.

Change-Id: Id52fc8397a1eb4198ae2271bf88693e15b816369
Fix the Italian translation

Change-Id: I22985ca7ba0b2bf6e68c4ee0450a73cf3ae58cf7
Revamp DSP Manager

Adds drawer navigation to the DSP Manager.
Drawer navigation is default, but it also allows to switch back
to the old view pager (tabbed) navigation.

It also allows to enable/disable drawer mode, enable/disable
tabbed mode and enable/disable the option to switch between
these two navigation modes.

General code cleanup and formatting is done as well.

Video Preview:
https://www.youtube.com/watch?v=w63YscJ_WCo

Change-Id: I43ca72809255acf2442dd2c716232587ea23237e
DSPManager: Move "Help" in menu down so it matches Android's standards

Change-Id: I58c24561019b10ac99a86879d181fe63fbb0edaa
DSPManager: SV translations

Change-Id: Ia3ba24c07cbe32c3b645b8fac7ff4ba18b323963
DSPManager: FR translation

PS2-3: rebase, new translation and correction

Change-Id: I05ce1acd2d0b2f8000519ad36d7e66a60f6cde0d
Merge "DSPManager: Move "Help" in menu down so it matches Android's standards" into android-4.4
Update new IT Strings

Change-Id: I868b189c43b74599b751f649b74eb0d613835b7d
Merge "DSPManager: FR translation" into android-4.4
DSPManager:EL Translation (missing strings/arrays)

Change-Id: Ie981c99cbbf8aa2899c97bad087ca5d58adcc831
DSPManager: Boeffla sound control

Requires Boeffla Sound 1.6.5
Should be compatible with later versions too.

Change-Id: I3e5447551bab1961f2bea4241a13572ec8009368