[TTS] Create script for processing TTS training audio
Signed-off-by: Ryan <rlangman@nvidia.com>

# What does this PR do ?

Add a script for doing audio preprocessing for TTS training.

**Collection**: [TTS]

# Changelog 
- Created a "data" directory under nemo.collections.tts following the same convention as the ASR & NLP code.
- Added data_util class for generic operations like processing training manifest. Not sure of volume normalization should be there, but currently have no better place to put it.
- Added silence trimming implementations using energy and VAD based approaches.
- Added audio_preprocessing script for running the data processing logic over a training manifest, with example config files.

# Usage

```
HYDRA_FULL_ERROR=1 python /home/rlangman/Code/NeMo/scripts/dataset_processing/tts/audio_processing/preprocess_audio.py \
    --config-path=/home/rlangman/Code/NeMo/scripts/dataset_processing/tts/audio_processing/config \
	--config-name=preprocessing.yaml \
	data_base_dir="/home/rlangman/Data/nemo_processing" \
	config.num_workers=2 \
	config.max_entries=100 \
	trim=vad \
	trim.device=cuda
```

# 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)
- [x] Did you write any new necessary tests?
- [x] 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

# Additional Information

I manually tested the silence trimming using the openSLR Spanish data. For the 2 modes the dataset size decreases from:

Energy: 35 hours -> 28.8 hours
VAD: 35 hours -> 22.6 hours

This is because lots of the audio has noise in the long silences at the start and end of files. The VAD can differentiate the noise from speech while energy cannot.

Doing trimming on my workstation with the ~24k utterance dataset takes about 5 minutes with energy and 30 minutes with VAD.

More automated testing might be possible if we add CI tests that use actual audio, but I would leave that for a future PR as we do not yet have guidelines for TTS CI tests.