Added explanation to assertion.
Renamed exception_ptr() to exception().
Added better error messages.