give more descriptive exceptions in immutable.py