build: allow use of openjdk and other versions of make

Change-Id: I2e3c7f89ce51888afb9cda30eeaf6d757b057e2e
Add recoveryzip target. Import recovery building/porting tools.
add support for overriding build.prop settings.

Change-Id: Ie4224d608b7bcb0c2087bd77bc954f8f5f9b6495

Conflicts:

	core/Makefile
remove unused BOARD_USES_COMBINED_RECOVERY

Change-Id: I79520c510488d63d469b0d1a3a099420f7de1fe6
add support for custom releasetools
create a target for utilities
Fix up the autoinclusion rules for the utilities and recoveryimage target.
Allow override of device asserts, including multi-device support.

Set in board file with TARGET_OTA_ASSERT_DEVICE.
(cherry-picked from commit 0f452f21fc9323b9d1fe746161761cf40aaa5030)

Change-Id: I3d06bdc0e3e26bde0c0e646accd050364f9713b9

Conflicts:
	core/Makefile
	tools/releasetools/ota_from_target_files
Better handling of ramdisk during make

make clobber used to call rm -rf out/
so if out is a soft link to i.e. /tmp/out
the soft link is deleted instead the content
so i changed the makefile to rm -rf out/*

Change-Id: Id1991161617da8ec34307a30412c134e31f589b4
Fix up the recovery.fstab for adv recovery

Add options found in cm7 to allow for more complex recovery.fstabs with
multiple fstypes.

Change-Id: Id249c8f6766a1490a80fb3bd17bd7aa4e7dd9f2f