[skip ci] Rather than relying on comments, move the documentation into the source, so it's checked by the compiler automatically