Introduced separate class for Nystrom method.

The Nystrom method is interesting in its own right, and not only within the context of the LowRankGPModelBuilder. We have disentangled the logic of the low-rank approximation from that of the Nystrom method and put the code for computing the Nystrom method into its own class.
@marcelluethi Model::BuilderInfoList is std::vector, avoid using push_back when you know the size in advance 
```c++
ModelInfo::BuilderInfoList biList( 1, builderInfo );
```