Feat: Add api class for gemini AI

## Description
This Pull request introduces an API call to google Gemini to format OCR code output

## Type of change
Please delete options that are not relevant.
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update

## How Has This Been Tested?


## Checklist:
- [x] I have followed the coding style guidelines of this project
- [x] I have reviewed my own code
- [x] I have commented hard-to-understand areas of my code
- [x] I have added docstrings to all public functions/methods
- [x] I have used descriptive variable names to make by code easier to understand
- [x] I have made corresponding changes to the documentation
- [x] I have added tests that prove my fix is effective or that my feature works
- [x] New and existing unit tests pass locally with my changes

## Related Issue(s)
Issue #5