Fix empty_keys, provide lower case versions of tests

The first patch fixes the definition for empty_keys to match other associative array definitions (that is, use a JSON Object, not a JSON array).

The second one provides lowercase percent encoding tests since the RFC does not explicitly specify that percent encodings should be uppercase, and both are equivalent anyway. It does assume however that an implementation consistently uses either one or the other, but I believe this is a fair assumption. README and XSLT updated accordingly.