modified utility/Alloc.h to contiguously allocate memory (issue #8)
added asserts.h with macros such as assert_divides(a,b), see issue #15
issue #16: created utility/debug.h with dprintf(...) and dprint(varname) macros
created coarse profiling utility, TimeTasks (issue #17)
implemented use of new profiling utility, TimeTasks (issue #17)
enforced that XLEN divides nxc (issue #10)
added support for Random fields problem (issue #9)
issue #9: changed default problem to Random fields with periodic boundaries
created makefile.knc for Xeon host processor and makefile.mic for Xeon Phi coprocessor
issue #18: replaced Grid and Field classes with typedef to Grid3DCU and EMfields3D
issue #19: modified Particles3D::mover_PC() to improve parallel performance
issue #20: created Moments class used by EMfields3D::addToSpeciesMoments()
issue #20: implemented use of Moments class in interpP2G() to sum in parallel in OpenMP
Merge branch 'pulluptohere' of https://github.com/alecjohnson/iPic3D into alecjohnson-pulluptohere
Corrections and improvements on Alec's modifications:

1. In EMfields the assert function is changed to assert_eq.
2. In iPic3D the default initialization uses the GEM problem: be careful to comment or modify this part if you're not runing the GEM problem (for future versions this should be changed).
3. Contiguous memory allocation is now available using Jorge's version.
   WARNING: Alec's version seem to work better on MIC architectures. If you plan on using iPic3D on MIC, see commit @58f69e812bb6aa8ddf52fa33ed70a9b368d6c3f8
4. Adding memory assignment functions for contigously allocated matrices in Alloc.h (Jorge's version).
5. For compilation reasons the diagnostics.cpp is now diagnostics.h