Utils: add list container interface and implementation.

The project now provides a Utils library which will provide standard containers
and tools for the kernel. The library now provides a list container interface,
a linked list based implementation and unit tests for lists.
Utils: add some math utilities.

Adds a Math class to the Utils library to perform some mathematical operations
in the kernel. Unit tests provided too.
Memory: add a physical memory allocator.

The FrameManager allows to manage allocation of physical memory pages. This
allocators aims to be used both from kernel en user side (through the kernel).
The System class API changed a bit, the boot context structure is injected
explicitely and a "bootstrap" method do a minimal system initialization.