[TaskScheduler] Improved task scheduler efficiency and minor bugs fix
Saturday Changes
- Replaced task map with std::array
- Rework on how tasks are removed Monday Changed
- Fixed bug, we were searching for an id outside the mutex
- Added a counter from where to start searching a free space to add a task (should reduce the time needed by AddTask()