Fixed multiboot header loading

	Changed linker script and boot.asm
		to make sure that grub can detect the multiboot header and boot the OS
		properly

	Added ext2 functionality
		ext2_open
			with premature file locking
		ext2_close
			to properly close and opened file
		ext2_expand
			used to expand (enlarge) a file's size
		ext2_free_blocks
			used to free unused blocks
	Improved ext2_add_file_to_dir function
		where if there is not enough space in the directory, it expands the it to fit the
			newly added dirent