added slingshot as dependancy
can now raise a pure ring responses up the chain until it's caught by
the function defined by the macro and then released to ring as the response