custom response support (initial review)

@davglass