applied several changes from x86_32 and x86_64
simplified boot.s slightly
applied some changes from x86_32
added ALIGN statements to make guarantuee alignment