AudioService: Don't adjust volume when vol-downing to vibrate or silent

Pressing vol-down to vibrate or silent would (previously) still adjust the
stream volume, setting the last audible volume to 0, which is not allowed
for voice-capable devices.  Thus, the last audible volume would reset to
default on reboot if on vibrate/silent or the lowest volume setting.

By not adjusting volume when vol-downing to vibrate or silent on
voice-capable devices, the last audible volume is always preserved across
reboot.

Change-Id: Ic8c00516c1e717b2e5d47769a6fb7a5ce05f530f
[WIP] Multi-window

This is a big work in progress, which currently has some bugs,
but begins to look okay.

You can already multitask a little bit, by using the
app switcher and long-pressing an icon, then select "Add to
Split View".
Last window touched gets the key focus.

Code is very ugly, I know. Don't merge it, don't use it
for now. Unless you want to make your code ugly.

Enjoy :)

Change-Id: I4a03a84539fd3ac1273f0d3503fe8fafcd16be26

Conflicts:
	core/java/android/app/Activity.java
	core/java/android/inputmethodservice/InputMethodService.java
	core/java/android/view/IWindowManager.aidl
	packages/SystemUI/res/values/custom_strings.xml
	services/java/com/android/server/wm/WindowManagerService.java