throw exceptions on insert/updates
added new exception package and class