refactored Equation.scala
added some tests for Equation
induced subgraphs get their labels on nodes and edges
added handy constructors with inferable type parameters to Graph and removed unused constructors
fixed bug in graph isomorphism check: when two graphs have only one node, their labels must match
Counter companion object is a Counter
order of missing nodes is important for arrow creating in Graph.unions
removed unused method from Utils.scala
added more implicits
added derivability check
adding edges to new nodes is now possible
removed tests for old constructor and updated the rest in test Graph.scala
updated Graph constructors in test Rule.scala
added two systems for fragmentation: bimotor and rabbits
updated README.md