NSExceptions are useless mostly. Replaced with assert where useful.