Fix bug of not  saving to MarkerResult

Fix make_marker_tree_for_context so it uses cls instead
of Marker, enabling sub-classes call their own split_into_groups
classmethod.

Add endpoint to retrieve a whole marker tree graph as
json
Add start_time to Marker, sets to start of run_job
Enable custom batch and group marker sizes
Correct tree builder to propagate group and batch size