This is plumbing for section handling. The vfuncs don't do anything, this is just the infrastructure.