copySItoDI, some linkExectractor tweaks
template haskell functions for deriving monadtrans instances