Initialize the kernel
Add check if allocation request fails
Fix coding style
Fix issue with the starting address of an allocation request

Took a while to figure out why a CPU address exception was being
thrown when the address itself is clearly valid (R/W). The issue was
because the header is 2 bytes, the address returned to the requestor
will always be on a 2-byte boundary. This causes alignment issues if a
long-write is performed. The solution is to pad the header to 4-bytes.