Restructured to include separate errors for each instance
Restructured to include separate errors for each instance
Added Error Classes with default messages
Added test case for first name nil