This merge introduces a fully implemented package manager, various optimizations and changes to extension compiler php.
- Implemented proper log error levels for the CLI (So stuff like `--log` and `-l` will work, and when using `verbose` or `debug` levels, special effects such as the inline progress bar will not be shown.
- Implemented `--no-color`
- Various bug fixes and minor optimizations to the code-base
- Fixed various installer bug
- Added some more documentation (But it's unfinished)
## Resolved issues & Work Items checklist
A list of issues that this merge resolves or is in progress of resolving
- [ ✅ issue #21 ](https://git.n64.cc/nosial/ncc/-/issues/21) **Add first-time install program files to be constructed** -
Commit [b8c88bf4226e88760df221bb95070b8c34f3768d](b8c88bf422) addresses this issue by implementing a method that initializes non-existent directories & files and setting the correct permissions for their intended purpose
- [ ✅ Work Item #14 ](https://git.n64.cc/nosial/ncc/-/work_items/15) **Implement a CLI command to display all installed packages on the system** - Commit [3e52a30096653e3bf212b4e7e36ce6f94d245ee3](3e52a30096) Implements a CLI command by implementing a method to walk through the PackageLock and display all the installed packages indicated by the current PackageLock state
- [ ✅ Work Item #13 ](https://git.n64.cc/nosial/ncc/-/work_items/14) **Implement a CLI command for uninstalling packages** - By result this also resolves [Work Item #12](https://git.n64.cc/nosial/ncc/-/work_items/13) **Implement Uninstaller** with commit [8da4f532a146d626db1ee388eeb763ae14523589](8da4f532a1), [263f50a6680f26c47c04c92941ac9cc82b2b43d3](263f50a668) & [2390c6395cc60a5221a0c3064283200ed47273da](2390c6395c) by implementing uninstallation methods to the PackageManager & into the CLI Menu for Package Managing
- [ ✅ Work Item #10 ](https://git.n64.cc/nosial/ncc/-/work_items/11) **Implement Installer**
- [ ✅ Work item #9 ](https://git.n64.cc/nosial/ncc/-/work_items/10) **Create PackageManager Class and implement Install() method**
- [ ✅ Work item #8 ](https://git.n64.cc/nosial/ncc/-/issues/8) **Implement Package Manager**
- [ ✅ Work item #7 ](https://git.n64.cc/nosial/ncc/-/issues/7) **Implement PackageLock**