1. - First stage of refactoring SphNeighbourSearch to make more generic for additional algorithms - Added ParticleType template.
Splitting SphNeighbourSearch classes, in particular to split KDtree from SPH neighbour search routines.  Intermediate commit; currently not working.
Merge branch 'refactoring' of https://github.com/gandalfcode/gandalf into refactoring
1. - Split KDtree from main SphNeighbour class
2. - Added ParticleType template to SphNeighbour class; currently compiles (but untested)
3. - Modifed sinks with new template (currently doesn't compile)