Merging T5 PEFT methods into a simple tuning/eval script
# What does this PR do ?

This PR merges the following T5 PEFT methods:
- adapters
- lora
- p-tune
- ia3

The changes in T5-related classes make it easier to merge the PEFT methods. All of the methods have been tested on Squad-100 subset (not optimal, but will try to run with optimal params also): https://wandb.ai/nvidia/davidm_nemo-t5_peft_tests?workspace=user-dmosallanezh

**Collection**: NLP

# Changelog 
- Add specific line by line info of high level changes in this PR.

# Usage
The tuning can be used as:

```bash
python /data/NeMo/examples/nlp/language_modeling/tuning/megatron_t5_peft_tuning.py \
    trainer.precision=32 \
    model.language_model_path=BASE_MODEL \
    model.data.train_ds=['TRAIN_DATA'] \
    model.data.validation_ds=['VAL_DATA'] \
    exp_manager.create_wandb_logger=True \
    exp_manager.wandb_logger_kwargs.project='PROJ' \
    exp_manager.wandb_logger_kwargs.name='NAME' \
    model.optim.lr=4e-3 \
    model.tensor_model_parallel_size=1 \
    model.pipeline_model_parallel_size=1 \
    trainer.devices=1 \
    exp_manager.exp_dir='/data/t5_peft' \
    ~model.optim.sched \
```

and the eval script can be used as:

```bash
python /data/NeMo/examples/nlp/language_modeling/tuning/megatron_t5_peft_eval.py \
    trainer.precision=32 \
    data.test_ds=['TEST_DATA'] \
    data.global_batch_size=64 \
    data.micro_batch_size=4 \
    language_model_path=BASE_MODEL \
    peft_model_file=SAVED_NEMO_FILE \
    pred_file_path=t5-peft-preds.txt
```

# Before your PR is "Ready for review"
**Pre checks**:
- [x] Make sure you read and followed [Contributor guidelines](https://github.com/NVIDIA/NeMo/blob/main/CONTRIBUTING.md)
- [ ] Did you write any new necessary tests?
- [ ] Did you add or update any necessary documentation?
- [ ] Does the PR affect components that are optional to install? (Ex: Numba, Pynini, Apex etc)
  - [ ] Reviewer: Does the PR have correct import guards for all optional libraries?
  
**PR Type**:
- [x] New Feature
- [ ] Bugfix
- [x] Documentation

If you haven't finished some of the above items you can still open "Draft" PR.


## Who can review?

Anyone in the community is free to review the PR once the checks have passed. 
[Contributor guidelines](https://github.com/NVIDIA/NeMo/blob/main/CONTRIBUTING.md) contains specific people who can review PRs to various areas.

# Additional Information
* Related to # (issue)
