validation feature
changed validate location and made changes for required validation
added app error struct for error handling
resolved the error bug
improved the error message format