improved prompt response handling

Responses are now handled using a response object instead of a handler. A
non-null response handler indicates a prompt is active. The match response
handler still needs to be integrated into the response object file.