make map resize dynamically instead of hardcoding to max width/height; add colors