public static <M> Local<M> of(final Supplier<? extends Traversal<Vertex, Edge>> incidentTraversal, final BiFunction<M, Edge, M> edgeFunction) {
            return new Local<>(incidentTraversal, edgeFunction);
        }
A Local message is directed to an adjacent (or "memory adjacent") vertex.
The adjacent vertex set is defined by the provided {@link Traversal} that dictates how to go from the sending vertex to the receiving vertex.
This is the preferred message scope as it can potentially be optimized by the underlying {@link Messenger} implementation.
The preferred optimization is to not distribute a message object to all adjacent vertices.
Instead, allow the recipients to read a single message object stored at the "sending" vertex.
This is possible via `Traversal.reverse()`. This optimizations greatly reduces the amount of data created in the computation.

@param <M> The {@link VertexProgram} message class
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/computer/MessageScope.java