Working version close to ready for blog post.