Now builds to a visible folder (which has been added to .gitignore). Also made malloc/free implementation more generic to provide support for multiple distinct memory pools to allocate from (i.e., multiple address spaces). Blocks now include the size of the linked list node in their size calculation, so that regions allocated in sequence will not be separated by the (unused) node. This will make it easier to allocate pages on page-aligned boundaries in future.