if you guys are happy with this PR I'll squash a few commits to remove the
large files from the history and merge.