Add type_check callback

Fixes #196.

Like #197, but merging into v1.3.0 instead of master.
Why not put the `run_callbacks` inside the `type_check` method? We want them run any time that method is run, right?