Updated maps api and built generic map class