Refactor provenance graph loader

This removes the Writer classes in favor of a function that prepares
the statements to be loaded.

In addition, support for referencing provenance descriptions can be done
by pre-defining the `origins:neo4j` or `origins:uuid` attribute. This
enables creating provenance documents that augment the existing graph
rather than creating new nodes each time and having to reconcile them
later.

The provenance models have been removed in favor of a simple set of maps
and sets.

The `origins:Dependence` relation has been integrated which provides a
model for representing dependence between entities.

Fix #43

Signed-off-by: Byron Ruth <b@devel.io>
Merge pull request #44 from cbmi/issue-43

Refactor provenance graph loader
Add support for Neo4j transactional batching

Signed-off-by: Byron Ruth <b@devel.io>
Refactor provenance graph loader

This removes the Writer classes in favor of a function that prepares
the statements to be loaded.

In addition, support for referencing provenance descriptions can be done
by pre-defining the `origins:neo4j` or `origins:uuid` attribute. This
enables creating provenance documents that augment the existing graph
rather than creating new nodes each time and having to reconcile them
later.

The provenance models have been removed in favor of a simple set of maps
and sets.

The `origins:Dependence` relation has been integrated which provides a
model for representing dependence between entities.

Fix #43

Signed-off-by: Byron Ruth <b@devel.io>
Update graph resource functions to take optional transaction

This enables chaining together function calls for manipulating related
data and preventing potential for invalid states.

Signed-off-by: Byron Ruth <b@devel.io>
Implement create and delete provenance resource functions

This takes the same input as the graph functions in `origins.graph`
and produces a provenance graph representative of the literal graph.

Signed-off-by: Byron Ruth <b@devel.io>