Framework for PEFT via mixins 
# What does this PR do ?

PTuning and Adapters/IA3 have been implemented in diverging styles. Adapters and IA3 uses the elegant adapter_mixins framework. This PR implements P-Tuning via the same adapter_mixins framework.

The high level goal is to unify all PEFT methods to use adapter_mixins. This is allow us to the GPTSFTDataset to be used for all future PEFT methods.

Currently this PR does not remove the GPTPromptLearingModel functionality, but once adaper-mixin based p-tuning has been tested we can deprecate GPTPromptLearingModel GPTPromptLearningDataset classes.

PTuning does not need to flexibility to insert prompt tokens anywhere in the input. This feature has been removed for simplicity.

Also added:
- mix-n-match PEFT scheme like `adapter_and_ptuning` can be easily extended to do `ia3_and_ptuning` or `lora_and_ptuning`
- grad clipping functionality for PEFT training
- LoRA adapters added for GPT


**Collection**: [Note which collection this PR will affect]

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

# Usage
* You can potentially add a usage example below

```python
# Add a code snippet demonstrating how to use this 
```

# Before your PR is "Ready for review"
**Pre checks**:
- [ ] 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
- [ ] 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)
