Addition of MapSaver; Merge with all branches

This includes the basic components of map saving a basic map class for usage with it.