starting code for an abstract map layer without dependence on google maps