Make cpu-specific optimizations simpler, smarter, and more compatible with CM

infer what we use TARGET_ARCH_VARIANT_CPU for form TARGET_CPU_VARIANT
if TARGET_ARCH_VARIANT_CPU is undefined (as is the case with a virgin CM
device tree.
(based on 720710b - build: Cleanup CPU-specific optimizations (4 weeks ago) <Steve Kondik>)

assume some things are always true, and remove vestigial variables

Change-Id: I7e5c5809b1dc3f19e99cb153461876077b237345

Conflicts:
	core/combo/arch/arm/armv7-a-neon.mk
	core/combo/arch/arm/armv7-a.mk

Conflicts:
	core/combo/arch/arm/armv7-a-neon.mk
	core/combo/arch/arm/armv7-a.mk

Conflicts:
	core/combo/arch/arm/armv7-a-neon.mk
Link PRIVATE_TARGET_FDO_LIB before shared libraries

For global declaration of FDO profile generation and usage,
we need to link PRIVATE_TARGET_FDO_LIB (libgcov.a by default)
prior to linking shared libraries.

TARGET_FDO_LIB is set if feedback directed optimizations
are in use, so we do not need to worry about consistent size
increases from this change.

Change-Id: I543903f58893816f037c9466f31b19dfe822fdf4
a little cleanup
missed one
Revert "Activated super saiyan! Jk lol. Add gcc 4.8"

This reverts commit 177d3c49bdc9ba799cc7f445c508be5e0f6e4880.