new class for gradient matching added. Old parameter inference engine now redundant. New class takes a vector of interpolated osbervations, such that pre-processing can be done by another class e.g. subset-sampling