fix returning undef for no Referer header

Was incorrectly returning blank when no Referer header was present,
fixed to distinguish value, blank and undef correctly.

Tests for all three values added as well.

Bug reported by "Robert Brown" <rob@intelcompute.com>.
v0.038

    - return undef for $c->req->referer correctly when there is no Referer
      header