support passing in a File object
rename path property to id
expose javascript in .toJSON
call toJSON on output
remove global cache

this enables concurrent calls to `graph`