Introduce the memory subsystem.
The use of Copy+Paste led to this terrible typo to be propagated.  Fix it.
Introduce page mapping accounting.

Actual mapping is still not implemented - but this functionality should
be easy once the arcsim interface has been decided.
Update memory interface, and implement guest string reading.
Add a new memory unmapping interface, and optimise the string reader.
Abstract the page mapping to the thread descriptor.

This allows for a VM implementation.
The page must be removed from the linked list before it is freed.
Begin the ArcSim callback interface.
Utilise the ArcSim callbacks to map/unmap guest memory pages.
Introduce the binary loader infrastructure.
Fix a wee casting error.
Add the various loader infrastructure stubs.
Re-work the binary loading infrastructure to utilise a binary descriptor.
Begin the implementation of the ELF loader.