Stack relocation, end of the 2nd page (0x400000)
Simple heap management.
Stack relocation at the end of the last page.
Remove static stack location.
[Memory] Initialized kernel heap

Read the doc/memory.txt documentation
for more details about memory management.
Print now support unsigned numbers
[Video] Added support for unsigned numbers.
[Heap] fixed heap end pointer value (bad type).
Faster number printing
Fixing heap resizing.
[Type/Heap] conforming to type semantic.
[Heap] Use of uintptr_t only, for arithmetic purpose.
[Video] Better code locality.
[Allocator] First draft, to be tested.

Simple allocator based on the Doug Lea's malloc architecture.

+-----------------------------------------------------------+
| BINS |      LARGE_CHUNKS     |   WIDE_CHUNK               |
+-----------------------------------------------------------+

BINS is a table of lists of small chunks, access is O(1) in the best
case and amortized in the worst case. The definition of small chunks
depends on ``small_chunk_size''.

LARGE_CHUNKS is, for the moment, implemented as a sigle linked
list and keeps a track of chunks larger thant ``small_chunk_size''.
A better implementation (heap, rbt, b-tree etc.) is possible
in the future.

The WIDE_CHUNK is the chunk containing the rest of the memory
available to the allocator. This chunk is not to be returned by iself
and serves as a reserve for later chunk requests.

The allocator supposes it is the only one protagonist to make
use of the given heap (in that case: the kernel heap). No external
call to the heap should be made.

TODO: test the allocator
TODO: check and mark if the pointer is already free in allocator::free
TODO: implement a better large chunks management (optional)
TODO: implement merge and split (optional)
[Allocator] Tested, works in all cases.
[Allocator] new/delete family use Allocator.
[Allocator] Removing test class.
[Allocator] Remove page size calculation ambiguity.