Update Makefiles to get proper dependency checking working.

This change requires all platforms to now specify a list of source files
rather than object files.

New source files sould preferably be specifyied by using the path as
well and we should add this in the future for all files and remove use
of VPATH. This is desirable because VPATH can hide issues like the fact
that BL2 currently pulls in the BL1 file bl1/aarch64/early_exceptions.S
and if in the future we added bl2/aarch64/early_exceptions.S then it's
likely only one of the two version would be used for both bootloaders.

Fixes ARM-software/tf-issues#11

Signed-off-by: Jon Medhurst <tixy@linaro.org>
Enable platforms to omit some bootloaders

If a platform doesn't specify a BLx_SOURCE variable, then building
of the corresponding bootloader isn't attempted.

This also removes support for PLAT=all

Fixes ARM-software/tf-issues#30

Signed-off-by: Jon Medhurst <tixy@linaro.org>