Major rewrite of mmaps; added direction capabiltiy