Die on unexpected arguments.

Handles both positional and named case. This clears up many of the
remaining S06 test files with failures.
Implement getThrower.

Means various error cases now through the correct typed exception.