Make with_return a localised value within $self

Instead of an attribute that needs clearing, make it a localised variable
that will go back out of scope.
Storing a permanent attribute means you need to catch all error cases.
Rename test dir
Prove that session is not cleared properly