GHC has no capability to perform graph searches on instance definition.
Because of that, transitive rules for type classes cannot be defined.
This package solves the issue with type functions performing a search on the
graph where nodes are types and edges are rules from a given rule database.
After constructing the type-level representation of the wanted path, the system
constructs the needed functions from the value-level representation of the