Switches and exceptions.

It's like we're actually using C++!