allows option to pass in binary that conforms to API
handles graph boundary cases; uses None for master