Initial commit of my working version.