All the requirement are met here!

It's all done. I might want to add some more interesting and interactive features later on, but for now, consider this to be the final one. I added the help button, so next commit will be the HTML document.