Refactor response calls to remove duplicated logic

I'm not entirely sure I like that if you want a none result you still have to declare the ``response_result`` function and just return ``None`` in it. However I'm not sure it's a great idea to default to returning ``None`` either.

Anyone else have an opinion?