Rationalise samplers
We have quite a few samplers implemented now, which is great, but it means that the sampler.py is becoming a bit unwieldy.
What do you think about making sampler a subdirectory of core which has a file for each sampler and then run_sampler probably defined in the __init__ file?
I know we have a couple of open MRs adding new samplers, so this will have to wait until they're merged.
Once it has, I'm happy to do the heavy lifting.
Thoughts? @paul-lasky @gregory.ashton @moritz.huebner
Edited by Colm Talbot