switching to tabula

We had discussion with @eparejatobes about his new library [tabula](https://github.com/ohnosequences/tabula) and its application in *dynamograph*. 

#### parsing
* parser should read xml/csv files and produce *scrarf* *nodes* and *vertices* of the given model

#### modeling tables
For the given *scrarf* model we can define abstractions that will encapsulate tables (from *tabula* that we be used for storing *edges* and *nodes* something like:

```scala
trait VertexTable[V <: Vertex] extends HashKeyTableType(name, region, hash) 

trait EdgeTables[E <: Edge] {
  trait InTable extends AnyCompositeKeyTable {...}
  trait OutTable extends AnyCompositeKeyTable {...}
}
```

So here we will have explicit binding of our model and used tables.


#### writing to dynamodb
Than for writing nodes and edges we will need other traits:

```scala
trait VertexWriter[V <: Vertex] {
  val vertexTable: VertexTable[V]
  def write(v: vertex): Item[VertexWriter#Tpe] //or  List[WriteOperations] 
}
```

choosing right output types for writing methods is a not trivial question. Good thing that you don't need to wait until *tabula* will finished. Because actual writing can be completely separated. In the end output should be transformed anyway into something like List[WriteOperations] - input for actual DynamoDBwriter.

#### reading from DynamoDB 

for that we need something `DynamoDBVertex` and `DynamoDBEdge` that will use `VertexTable` and `EdgeTables`.

#### tabula state
It realized as `ohnosequences %% tabula % 0.1.0-SNAPSHOT`