Fix up server routing a bit and history changes
Ensure yield regions are isolated and create clearYield method.

- clearYield method is to stop the annoying warnings that sometimes appear when
  clearing a yield (but the layout has changed so yield doesn't exist).

- Turns out, yield regions were not being isolated properly. Thanks to @hiraash
  for discovering this.

- TODO: Add tests for re-rendering.