Minimal bounding spheres for points

This introduces a method to create smallest enclosing spheres for an arbitrary number of points.
The implementation is a bit tricky due to the recursive nature of the algorithm but according to the papers it has a near linear runtime even for high-dimensional sets of points.
I will need this functionality for a mesh element quality metric (radius to shortest edge ratio) that is especially useful for the tetrahedral meshes we can now create. (You may know this from ParaView.)

I referenced the papers this is based on in the source file, if anyone is interested I can provide you either with PDFs or the printouts.
I think one can write for both, the copy and the move constructors their default versions:
```c++
// In header
BoundingSphere(BoundingSphere const&) = default;
BoundingSphere(BoundingSphere&&) = default;
```