Issue #2317149 by crutch: Refactored the way in which validation happens so that entity labels are accepted without IDs as well. Also added more helpful error messages for validation errors