Map to collect nodes
Although it doesn't look too complicated, I'd normally use the following modules to easily add and display nodes on a map:


Leaflet;
Leaflet Views;
Leaflet More Maps;
Views;
Geofield;
Geocoder;
Geocoder Autocomplete;
GeoPHP;
Entity;
Entity Reference;
Chosen;


I don't work with Taxonomy terms. Instead, I create a node type named, let's say "Category" and add the right categories as nodes instead of terms in a vocabulary. It is easier like this and offers me more flexibility in the future.

The Category content type is based on a form that only includes Title as field. I'm adding them manually, which is not as simple as adding tags (terms) with the autocomplete options. As an alternative, I think you could use Inline Entity Form to add Categories during node add form. Not sure though.

When adding nodes, you need:


an entity reference field pointing to the Category (using Chosen could help, if you don't have 10k categories);
a textfield using Geocoder text field with autocomplete;
a Geofield using Geocode from another field.


Now, when adding nodes, you get the Google Geocoder autocomplete option and the geofield will auto-fill with the right coordinates.

Then, I'm using Views to display items on the map with Leaflet. Here you can choose displaying only first 5 items, based on whatever filter criteria and order options you'd like. The view is a block and has an Entity Reference relationship poiting from the node to the category node + a contextual filter NID type my-node-type, with content ID from URL argument that uses this relationship.

Block will show up only on Category node-type pages in the content area.

Doesn't look very simple but there are a few tutorials on how to achieve that with leaflet, geofield and entities on Youtube. There are other ways to solve your problem, like using EVA with DS, adding blocks as fields in your DS display.