Added version of new binary tree, labelled BinaryTree2 (for now)
Temp. commit
New tree with memory optimisations
Removed locks from BinaryTree2 in place of summation arrays for each thread in UpdateAllForces
Replaced BinaryTree class with new KD-tree (formerly BinaryTree2.cpp)
Fixed memory leak problem with binary tree (but may require removing thread memory copies)
Fixed small tree neighbour search bug
Cleaned up parts of BinaryTree and added openmp counters
1. - Particle pairs now computed twice (for parallel efficiency)
2. - Bug in tree walk fixed
3. - Bug in tree variables sizes fixed
Added optimisations to Binary tree, including fast monopole calculation
1. - Fixed tree walk for stars/sinks
2. - Optimised some serial loops placing instead inside parallel regions
3. - Fixed bug with new fast monopole calculation
1. - Moved star-gas force calls into main SphNeib loops for parallel efficiency
1. - Added new timing routines for profiling
2. - Modified SphIntegration class to allow easier adaption in future (e.g. time dependent viscosity)
Added CodeTiming files this time
Minor optimisations to improve openmp scaling
More parallelisation optimisations, especially for building binary tree
1. - Changed nested parallelism flags so they are only active for tree
2. - Partially merged correction and endstep for integration routines
1. - Added wall clock time functionality to timing class
2. - Fixed binary tree thread bug
Added particle reordering option for testing
1. - Migrated energy integration into SPH integration class
2. - Added gas_eos enum for fast checking (rather than strings)