Create linker.ld

Copypasted from http://wiki.osdev.org/Bare_Bones#Linking_the_Kernel. Added kernel_mem_begin region to not let my boot_mem physical memory allocations interfere with C's stack. I will have to add something like this (I will call it boot_mem_stack) in the asm file (this sets up C's stack):
.section .bootstrap_stack, "aw", @nobits
stack_bottom:
.skip 16384 # 16 KiB
stack_top:

The difference between the stacks is that C's stack is later initialised: movl $stack_top, %esp