See the end of README for authorship details.