Parse points from OSM nodes.

    Parameters
    ----------
    response : JSON 
        Nodes from OSM response.  

    Returns
    -------
    Dict of vertex IDs and their lat, lon coordinates.

def parse_osm_node(response):
    """
    Parse points from OSM nodes.

    Parameters
    ----------
    response : JSON 
        Nodes from OSM response.  

    Returns
    -------
    Dict of vertex IDs and their lat, lon coordinates.
    """

    try:
        point = Point(response['lon'], response['lat'])

        poi = {
            'osmid': response['id'],
            'geometry': point
        }
        if 'tags' in response:
            for tag in response['tags']:
                poi[tag] = response['tags'][tag]

    except Exception:
        log('Point has invalid geometry: {}'.format(response['id']))

    return poi