fix tests

- the tests feed hand crafted data structure to the function, in real world this is
not the case
- request.Form is the result of url.ParseQuery() which returns a value even for an
'empty value'
- fixed the tests to mimic this scenario

- converted maps to a simple query strings, used url.ParseQuery() to parse the
querystring and use the returned data
fix empty values validation

- since empty values are counted as 1 value here, quick solution is to check
if string is empty again. set exists=false if its ""

- value is not trimmed on purpose, upto the user how s/he would like to handle
that case. Should be documented though
fixed formatting using gofmt
Added Omie to Authors
Merge pull request #5 from Omie/empty-value-validation-fix

Empty value validation fix - thanks Omie