Remove the use of tmp3 from GPU code, now we only need 2 tmp fields at GPU
Added generic functions to copy 1D, 2D, 3D fields from host to device, with option for offset/nooffset
Added generic functions for the backward copies
Renamed all classes and stripped of the c and put a capital letter
instead
Merge branch 'master' of https://github.com/microhh/microhh into masterupstream
Merge branch 'master' into cuda

Conflicts:
	src/fields.cu
Fixed class names in fields.cu
Made all functions that only return 0s void in grid
Merge branch 'master' of https://github.com/microhh/microhh into masterupstream
Use the void types in the cuda code
Renamed functions in grid
Completed renaming grid functions
Use the updated grid functions
Use the new naming convention in master
cleanup of fieldmaps (removed "s"), move tmp fields from "sd" to "atmp" to allow automatic copies of diagnostic fields to GPU, without always having 4 tmp fields (we only need 2)
Cleaned up master class
Renamed all the thermo class names
GPU and CPU versions working again with new fieldmap containers
Minor cleanup
Compiling thermo code