Remove the stupidity from the MemoryRegion class

For whatever reason I was managing the memory alignments myself, which
was dumb.  In addition, the underlying region metadata can only be
retrieved by detaching it from the class, the Ex() versions of all
functions are used exclusively, and the Lock/Unlock methods have been
removed completely since they have no Ex() versions available.