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

Conflicts:
	common.h
	ui.c
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