1 millon * improvement to isomorphism

Much better isomorphism implementation with lazy data structures and better algorithm, leading to [1 million factor improvement in even very simple cases](https://github.com/read-write-web/banana-rdf/blob/0436a63eecb00b73c3564e5ee23e9fd0286276c5/rdf-test-suite/src/main/scala/iso/GraphIsomorphismTest.scala#L305). If complexity of calculation is too big - meaning of "too big" is user settable - the calculation can fail quickly and gracefully.
That's a bug in the [unapply](https://github.com/w3c/banana-rdf/blob/master/rdf/src/main/scala/RDFDSL.scala#L32). This one can obviously fail.... Let's do the following:

* open a bug report
* you keep `isBNode` for now
* as part of the bug fixing, we revisit the uses of `.isBNode` and others