About time I put this under version control.