use configuration file to run simulations rather than massive command
line arguments
move a lot of codes from mutation model-specific module to shared module