Unbreak the build
Add conversion from CoreExprEquality to BiRewrite, ability to run RULES
forward and backward.

Note, so far only tested on small things such as:

  module Main where

  main :: IO ()
  main = print $ f 5

  f :: Int -> Int
  f x = x + x
  {-# NOINLINE f #-}

  {-# RULES "double" forall x. x + x = 2 * x #-}

The "double" rule can be applied forwards and backwards:

hermit Test.hs
rhs-of 'f
down
rule-forwards "double"
rule-backwards "double"