Improve build system

Moved .gitignore from project root to build directories.
Makefile reads patterns specified in gitignore to find
all output files and remove them with the help of `find` and
`xargs`.
x86: refactor gdt/idt, add tss segment, runtime::stack
Update to latest Rust master
fix gdt, util mod!
change RUST_ROOT. arm won't work
paging type params
use sse2
impl clone
temp pages
rework gdt and idt flags
flags zero
putx
elf HeaderFlags
exception putx
mmu: Page -> Descriptor
running
add diff comment
mmu add phys and frame
revert changes to mmu types
mmu cleanup