Fixed Paging to Work With Separated Memory

I fixed the paging management so that it will insert a process into memory if there is enough space, and this space does not have to be contiguous. For example, it might insert process 7 into the pages at memory 100-199 and 300-300. I also changed around a few files to make them easier to understand. Also, I am considering using a Strategy Design Pattern but am not yet sure if it will be worth it for this project.