Added basic message passing system for IPC
Add a circular buffer structure and functions to handle it
Created a idle task (It is required now)
Changed the way delay() worked to be more efficient