feat(input): rename form controls when name is updated
feat(form): support dynamic form validation