Descriptive errors

```javascript
function SbError(type, data) {
	var i;
	Error.call(this, type);
	for(i in data) if(data.hasOwnProperty(i)) { this[i] = data[i]; }
}

SbError.prototype = new Error();

```