Started work on this project a long time ago. Never got around to finishing it. This is an initial commit to backup this project to github.