Implementação de um array ordenado.

src/kernel/kpp/ordered_array.cpp
src/kernel/kpp/ordered_array.hpp:

	Implementação de array ordenado. Vai ser usado futuramente
	quando for implementar a heap do kernel.

src/kernel/kpp/utils.hpp:

	Adicionei uma função para fazer assert.
	Declarações automanticas de algumas accessor e mutators.

src/kernel/main.cpp:
	Inserido alguns teste com o array ordenado.
Mudanças para tentar implementar a heap.

Deixei muitas mudanças para esse commit, meio que culpoa do tutorial do molloys,
ele em muitos pontos é ruim, tenho que mudar muitas coisas antes de commitar
ou pensar muito, acho que é porque o meu SO tem objetos, e eu me preocupo mais
com a estetica e velocidade das coisas, como no kmalloc que eu tinha feito.
O tutorial do molloys não é ruim, mas ele não mostra as coisas de forma legal,
acaba que isso faz com que eu discorde de algumas coisas, mas essas coisas podem
ser funcionais depois. Isso é um saco.

src/kernel/compiler/gcc/new.cpp:
	Mudei para chamar o kfree ao inves de free no delete.

src/kernel/kheap.cpp
src/kernel/kheap.hpp:
	Primeira tentativa de implementar a heap como uma classe do tutorial
do molloy. Esta compilavel, mas ainda não esta sendo usado.
	Tem todas as definições e algoritmos do molloys, no maximo
eu coloquei tudo dentro de uma classe.

src/kernel/kmalloc.cpp
src/kernel/kmalloc.hpp:
	Aqui grandes mudanças.
	Mudei para ter apenas uma função que aloca a memoria, e essa função aceita
3 parametros, como o codigo do mollys. Fiz assim, ao contrario do anterior que era mais
rapido, porque é mais configuravel assim.
	Adicionei uma função padrao para lidar com o algoritmo de alocação
com apenas a informação do final do kernel que pega pelo linker.
	kmalloc_set_handler é uma função para trocar a função basica de alocação.
	Fazer a mesma coisa com o kfree depois.
	Tem que mudar quem é exportado e quem não é tambem. Provavelmente
	não precisa exportar kmalloc_int.

src/kernel/kpp/ordered_array.hpp:
	Pequenas mudanças. Adicionado abs_size, que diz a quantidade de memoria
	que o array usa.
	Removi um erro no operado [], que retornava const.

src/kernel/main.cpp:
	Menos/Mais codigos teste.

src/kernel/paging.hpp:
	Mudanças de interface, coisas privadas passaram a ser publicas,
	porque seram usadas em outras classes.

	Também foi mudado para a paginação funcionar com a heap.
interface do kmalloc.h melhorada e kfree add.

src/kernel/compiler/gcc/new.cpp:
	Como tem a interface do kfree(mais ainda não implementado a logica)
	eu estou usando o delete com o kfree agora.

src/kernel/kmalloc.cpp
src/kernel/kmalloc.hpp:

	Melhoras de interface. O que não precisava ser exportado não
	esta mais sendo exportado.
	Movido handlers para os cantos certos.
	Adiciondo a interface para usar o kfree de forma funcional. Muito
	parecido com a interface do kmalloc, nada de novo, muito configuravel
	(yeahh, baby, yeaaahhhhhh).

src/kernel/paging.cpp:
	Small change. Apenas para remover um warning que estava dando sobre
	variavel não usada.