Creating new routine op_print_dat_to_binfile()

Placing back-end specific binary file write functions in the
respective op_*_decl.c files. This commit implements for MPI-backend.
Creating op_print_dat_to_binfile_core for writing op_dat to file

This commit implements writing an op_dat to a binaray file for the
openmp backend.
Implement dumping op_dat to binary file for cuda, cuda+mpi, openmp+mpi
Adding binary file write capability to airfoil_sec
Rearranging op_print_dat_to_binfile routine forward declaration
Setting up airfoil dp to print q array at the end
Adding op_print_dat_to_txtfile()
Updating aifoil to utilize the new file output routines
JAC application with mpi results printed to file
Explicit freeing of the duplicated dat
Explicitly freeing user allocated memory in jac
Implement op_fetch_data for mpi, organise templates to handle op_fetch_data
For op_fetch_data_hdf5 - creating header files and file orgnisation
Implementing op_fetch_data_hdf5() for all backends
op_fetch_data_hdf5 includes the range of elements to be fetched
Preparing to implement op_fetch_data_hdf5_file()
Implementing op_fetch_data_hdf5 to hdf5 file for sequential
Implementing op_fetch_data_hdf5_file for mpi backends
Completed op_fetch_data_hdf5_file and hdf5 routines cleanup
Arranging op_fetch_data_hdf5() in headder file layout