Better, more generic error types.