Adding OpenCL backend

Conflicts:

	apps/CloverLeaf/Makefile
	apps/CloverLeaf/clover.out
	ops/Makefile
Adding viscosity loop to convert to opencl

Conflicts:

	apps/CloverLeaf/Makefile
	apps/CloverLeaf/clover.out
	apps/CloverLeaf/clover_leaf_ops.cpp
Setting up viscosity kernel compiling

Conflicts:

	apps/CloverLeaf/Makefile
	apps/CloverLeaf/clover.out
adding all the files for testing out OpenCL

Conflicts:

	apps/CloverLeaf/clover.out
Fisrt setting up opencl kernel calls
Setting up opencl code generator

Conflicts:

	apps/CloverLeaf/MPI/clover_leaf_seq_kernels.cpp
	apps/CloverLeaf/PdV_ops.cpp
	apps/CloverLeaf/accelerate_ops.cpp
	apps/CloverLeaf/advec_cell_ops.cpp
	apps/CloverLeaf/advec_mom_ops.cpp
	apps/CloverLeaf/calc_dt_ops.cpp
	apps/CloverLeaf/clover.out
	apps/CloverLeaf/clover_leaf_ops.cpp
	apps/CloverLeaf/field_summary_ops.cpp
	apps/CloverLeaf/flux_calc_ops.cpp
	apps/CloverLeaf/generate_ops.cpp
	apps/CloverLeaf/ideal_gas_ops.cpp
	apps/CloverLeaf/initialise_chunk_ops.cpp
	apps/CloverLeaf/reset_field_ops.cpp
	apps/CloverLeaf/revert_ops.cpp
	apps/CloverLeaf/update_halo_ops.cpp
	apps/CloverLeaf/viscosity_ops.cpp
	translator/python/ops.py
viscosity kernel running with opencl

Conflicts:

	apps/CloverLeaf/advec_cell_ops.cpp
	apps/CloverLeaf/calc_dt_ops.cpp
	apps/CloverLeaf/clover.out
	apps/CloverLeaf/flux_calc_ops.cpp
	apps/CloverLeaf/generate_ops.cpp
	apps/CloverLeaf/ideal_gas_ops.cpp
	ops/Makefile
Doing a bit of tweeking to observe the performance

Conflicts:

	apps/CloverLeaf/clover.out
	ops/Makefile
accellerate kernel converted to opencl -- results correct

Conflicts:

	apps/CloverLeaf/Makefile
	apps/CloverLeaf/clover.out
Generating OpenCL master kernels file

Conflicts:

	apps/CloverLeaf/calc_dt_ops.cpp
	apps/CloverLeaf/clover.out
Using code generated master kernel file for OpenCL to compile two kernels

Conflicts:

	apps/CloverLeaf/clover.out
code generating most of the opencl host stubb

Conflicts:

	apps/CloverLeaf/clover.out
Fixing bugs in code generator

Conflicts:

	apps/CloverLeaf/clover.out
Parsing user kernel signature and body to find constants

Conflicts:

	apps/CloverLeaf/clover.out
Debugging codegenerated accelerate and viscosity kernels
Code generator fixed for two kernels

Conflicts:

	apps/CloverLeaf/clover.out
Addign revert_kernel to OpenCL

Conflicts:

	apps/CloverLeaf/clover.out
Addign reset_field kernel to OpenCL
adding PdV kernel
Addign ideal_gas and flux_calc to opencl