finished memory allocator, now keeps seperated lists for different page sizes