Reduce deep nesting of header files

Reduce the number of header files included from other header
files as much as possible without splitting the files. Use forward
declarations where possible. This allows removal of some unnecessary
"#ifndef __ASSEMBLY__" statements.

Also, review the .c and .S files for which header files really need
including and reorder the #include statements alphabetically.

Fixes ARM-software/tf-issues#31

Change-Id: Iec92fb976334c77453e010b60bcf56f3be72bd3e
diff --git a/include/bl32/payloads/tsp.h b/include/bl32/payloads/tsp.h
index 4ac7a1a..1f542d5 100644
--- a/include/bl32/payloads/tsp.h
+++ b/include/bl32/payloads/tsp.h
@@ -31,9 +31,6 @@
 #ifndef __TSP_H__
 #define __TSP_H__
 
-#include <platform.h>
-#include <cassert.h>
-
 /*
  * SMC function IDs that TSP uses to signal various forms of completions
  * to the secure payload dispatcher.
@@ -86,6 +83,9 @@
 #define TSP_ARGS_END		0x40
 
 #ifndef __ASSEMBLY__
+
+#include <cassert.h>
+#include <platform.h>	/* For CACHE_WRITEBACK_GRANULE */
 #include <stdint.h>
 
 typedef void (*tsp_generic_fptr_t)(uint64_t arg0,