Added a port to UCOS2.

Added a port to the Micrium uC/OS-II based on original work by Michael
Anburaj.
Removed useless files.
Added an is_valid field to the mailboxes.

I added an is_valid flag to the mailboxes in order to implement some required funtion.
Changed the datatype of sys_mbox_t.

I changed the datatype of sys_mbox_t from a struct pointer to a struct,
allowing us to remove some memory allocation stuff.
Added a semaphore to message boxes.

Added a semaphore to mailboxes so that tasks waiting for writing to the queue
because of a full buffer would be notified that they can write again.
Able to send NULL and fixed the semaphores in mailboxes.

The semaphore was able to grow beyond 1 so a change in the logic was done.

Since UCOS2 2.60, we can put NULL pointers in message queues.
Added a validity flag to the semaphores. and it builds. yay.
Added a mechanism to give each IP task a priority.
Reverted a stupid mod...
Code review

Changed a few things including :
* Stylistic changes
* Added some documentation
* Some code review, including at least one possible bug, still have to
  investigate.
Fix a bug in sys_mbox_fetch.

The sempahore associated with the message queue would be incremented
even if no message was received because of a timeout, which could create
cases where the semaphore's count is higher than the number of available
slots in the queue.
Added sys_jiffies().
Explicit priority.

We want to have a very fine control over what our priority levels
are, so the previous hack around same-priority tasks has no place here.
added linux port.