benching functions where execution dominates
adding recursive contract definitions
documenting recursive contracts