Extend paging identity mapping to 6GB
When memory size is greater then 3073MB UEFI maps the bootloader to somewhere around 0x140000000, and when it's less then 3073, it gets mapped somewhere lower then 0xFFFFFFFF. When it gets mapped high, our page tables don't identity map the bootloader code since they only go to 0xFFFFFFFF. So it page faults while setting up paging, after setting PM_BASE to CR3, when fetching the next instruction that it needs to execute. So what i did, before in paging we had 4 PDP's, i added 2 more, so 6 PDP's in total now, which have 512 PD's each, 2MB's in size which gets us to 0x180000000, enough to cover the bootloader code.
This fixes QEMU and bare metal UEFI booting.