Topic/n triples

Implemented pure Scala NTriples parser that passes all the W3C tests.
Remove the unneeded JSON-LD parsers since one parser should parse all the formats.

This parser is a blocking parser, but that can be used in streaming mode - i.e. it can return results
as it finds them, so reducing memory consumption. For that one should use the [parseIterator method](https://github.com/read-write-web/banana-rdf/blob/topic/NTriples/rdf/common/src/main/scala/org/w3/banana/io/NTriplesReader.scala#L162) which has the following signature:

```
  def parseIterator(): Iterator[Try[Rdf#Triple]] 
```

This allows one to parse some huge files with minimal memory overhead. 
The parser also creates the minimum number of objects needed. ( This could be improved still a bit, but this should do for the moment)

Running the parser on some very large files one gets the following using the [LinkedMDB Ntriples dump](
http://queens.db.toronto.edu/~oktie/linkedmdb/) which is about 800MB unzipped.

```scala
sbt> project plantain
sbt> console
scala> import org.w3.banana.io._
scala> import  org.w3.banana.plantain._
scala> object PlantainNTripleTestSuite extends NTriplesTestSuite[Plantain]
scala>  PlantainNTripleTestSuite.main(Array("/Users/hjs/Downloads/Safari/linkedmdb-latest-dump.nt"))
...
time to parse 6153776 triples was 31508. Found 11389 failures.
```

Plantain for the JVM uses the akka.URI class which fully parses each URI, so this is a lot less efficient than it could be ( one may want to for example lookup URI string in a hashtable before reprising them. But it is very good quality ( I think.)

(This suggests that there should be an abstraction that is underneath ops, to be called before a triple is returned, so that another framework can decide on how to transform strings into URIs.)

with Sesame we get the following:

```scala
scala> main(Array("/Users/hjs/Downloads/Safari/linkedmdb-latest-dump.nt"))
time to parse 6148122 triples was 14661. Found 81 failures.
```

Many less failures and it finishes twice as fast.
can't you do something like 

```
def fail(s: String, erros: Int, test: List[Try[Rdf#Triple]] => Boolean) = ???

// would be probably better with a different name
def fail(s: String, erros: Int) = fail(s, erros, _ => true)
```

I am pretty sure you didn't want an implicit :-)