World: Added World abstraction and encapsulated various global functions

Todo: MapArchive should be owned by the world.