void * extend_heap(size_t nwords) param: nwords - number of 4 byte words Description: Allocates a new free block of size which is a multiple of 8 immediately after the last block. Merges this new block with the last block if that block is free. Rewrites an eiplog block after the new block. Return: pointer to the new free block (NOT yet in the linked list or tree of free blocks)