Refactor Script exceptions, include lineno as field, override __str__