Remove `virtual` keyword from `on_exit`

Unlike d7f07ff, this change can break client code. However, the fix is as
simple as removing `override` from the member function. Relates #180.