Be more consistent and slightly more lenient when handling GET params

Fixes an inconsistency when passed length of buffer without NUL terminating
character (ie. "this_key_is_present=&but_this_one_is_not=").

Also handles the "key" without = case by ignoring the key.

---

The spec is pretty bad about defining how query params should be handled... I need this support for a project I'm working on but I'd love to hear some input on these changes.

Things I didn't figure out fully: (1) whether this library always expects `evhtp_parse_query` to be passed a buffer size *including* terminating '\0' and (2) whether a key without value *and without =* should be ignored to treated as key with empty value (can't find a definitive answer/note on the specification).