Introduce Link Time Optimization

Summary:
This introduces the following improvements:
  - Can be globally enabled with TARGET_ENABLE_LTO := true
  - Can be locally disabled with LOCAL_NO_LTO_SUPPORT.
  - Host modules now build without LTO by default.
  - Modules built with clang no longer need -fno-lto specified locally (LTO disabled here automatically)
  - Modules built with clang no longer have -fno-toplevel-reorder unnecessarily set.

http://pastebin.com/FaxSUzVy

ps5: don't enable it by default because of poor device support
ps6: make additional clang ignores lto-dependant
ps7: fix caucasian space
ps8: turn off section anchors when LTO is on (fixes "cc1plus: error: section anchors must be disabled when toplevel reorder is disabled")

Signed-off-by: bart452 <bart_96@live.nl>

Change-Id: I17ea1d46cf1ba9bace70acd89a80143060f3bc31
img_from_target_files: Create md5 hashes for each file

Generate an md5sum-fastboot.md5 file that contains an md5 hash of each
file in the fastboot zip and store the file in the zip.

Change-Id: I19c2ac5a84fb21e965953d1dad0ebcbfd0b78d47
Merge remote-tracking branch 'upstream/kk44' into kk44

Conflicts:
	core/combo/TARGET_linux-arm.mk