Added map factory and abstracted map settings