check for valid cookie name

We quite often observe the following warning in our logs

    Use of uninitialized value in hash element at /usr/lib/perl5/site_perl/5.8.8/Dancer/Cookies.pm line 44

which is likely caused by an `$env_str` containing something like `cookie1=foo; ;cookie2=bar`.
Apart from that, `$name` would be defined but empty if `$env_str` contains something like ` =foo`

Proposed change: check that cookie name in `$name` is defined and not empty
Allow '0' as a cookie name

My previous fix wouldn't allow a cookie name of '0', corrected now.
changelog
Skip over cookies without names

Fixes #1036