Modify boot to link at higher half

Now the kernel is all linked to negative 2GB and the initialization will
unmap the lower address before entering rust code