A new class for creating a proposal for the MCMC added. This provides an intermediate step. We can implememt different proposals. The MCMC engine does not need to know what proposal type is being used.