Reducible

Adds `ReducibleType` and `ReducibleOf`.

Includes a test of `ReducibleOf` which demonstrates a runtime crash.