Extinction/finish model update

Rebased and updated PR #55. @kbarbary your commits and contributions are preserved in this PR. As model is in the process of a restructuring I have pulled all model contributions, but did a final clean up. 

All tests pass (coverage 85%) - please tell me if you're happy to merge. I can also make a PR to your PR if that is preferred (then you would have to rebase).