Added unit tests for current header behavior

You can't add multiple headers with the same name, they overwrite the previous
values.
Added option for adding additional headers with same name

Headers can be repeated (for instance, the Link header) many times, but Bullet
doesn't allow multiple values for the same header name. Added a new parameter
to Response::headers to allow you to add multiple headers with the same name.