Refactor add skill widget into more general form.