Merge upstream changes from CyanogenMod to bring up to kitkat

Squashed all fast-forward commits into one for a cleaner pull request.