working towards greater abstraction of DeFi primitives