TableOfContents widget boilerplate

I was planning on submitting more, but I realized I need to think about some more things first.