Updated values
Pass view controller as parameter
Small touchups
Hardest bug ever to trace down.

When rendering /body/ the length of it is used to set the attribute
buffer. If a plugin did their own rendering and the length of /body/
return was greater than its previous length, then the attribute buffer
would be messed up resulting in corruption of the string.