Make file structures dynamically allocated

Current td->files is an array of files, make it an array of pointers
instead and allocate individual file structures on the fly. This is
a preparation patch for file sharing.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/engines/sg.c b/engines/sg.c
index c50ad55..72bbc4e 100644
--- a/engines/sg.c
+++ b/engines/sg.c
@@ -277,7 +277,7 @@
 	int ret;
 
 	io_u = __get_io_u(td);
-	io_u->file = &td->files[0];
+	io_u->file = td->files[0];
 	assert(io_u);
 
 	hdr = &io_u->hdr;