Better validation
Added image picker
Message label and error display