i think we can merge all the weirdos together

conceptually, it's just refs vs no-refs, exactly like in terms