add strict_missing_exception

assign: @amygdalama 

This allows client code to override NotFoundError for strict_missing.

It's not that great of an interface (I'd prefer to take a function that can return in place of the patch), but it'll solve our problem.
What do you think should happen if someone sets a `'strict_missing_exception'` without setting the `'strict_missing'` option?