Code clean-up

* Alphebetize header includes
  - Files that exist at AOSP retain their ordering
* Add missing licensing headers
* Remove some obvious comments
* Whitespace cleanup
* Make local-only functions static
* Prototype static functions if used before defined
* Move non-functions just below header definitions
* Move edifyscripting functions to a new edify header

Change-Id: Ibb11baafa58c81a3673c6a03c5f631a241e1be3e
Allow selective restore of more than one partition

* Can choose more than one partition from the advanced restore menu
* Change nandroid_restore() to use bit flags representing partitions

Change-Id: I883d8cc81b730db672063d96409ae2478ebb63f9
Use OpenSSL libcrypto for MD5 checking

* Use OpenSSL libcrypto static library for both backup and restore md5
  operations
* Warn users when nandroid.md5 is missing entries on restore
* Only verify md5 checksums for partitions selected for restore instead
  of verifying checksums for all files even if not selected for restore
* Remove unneeded nandroid-md5.sh script

Change-Id: I6f2f4ad3c2bfc837698e4bd487d30684de7703e8
Show logo bckgnd after install, backup, restore

Change-Id: Ibbb78a43c51f945d5af781bd4eff2a675212e659
MD5: add a missing bounds check

Change-Id: I866d434953b3479de9c482b9fb311b93d8e9aec9
Improve touch code

Currently retains swipe-only touch handling, but all elements are in
place to support taps in the future, if desired.

Change-Id: I276111f767ade32717c859c62d1d9f046ffa161c
Support capacitive touch keys

* Adds basic support for capacitive keys (virtual keys)
* Only enabled if BOARD_RECOVERY_SWIPE is enabled

Change-Id: I13ade22991880e4fb5c5c71639660e1563e95a89