Fix issue with conditional puts.

Logic in put wound up sending 'put if absent' because !undefined
resolves to true.  Also, the If-* headers needed to be quoted.
Document _quote and reformat to match project style.
Merge pull request #10 from housejester/jde-conditional-fixes

Fix issue with conditional puts.
Encode collection names, keys and the search string.

Names, keys and search strings may contain url characters and should
be escaped to be properly sent to the server.  For example, I might
have a collection called 'links' and the keys are the full urls.  The
"links" collection might be represented in json as:

```json
{
  "links" : {
     "http://www.google.com/" : { "category" : "search engine"}
  }
}
```

To properly send that key, it needs to be encoded into the api url:

```
/v0/links/http%3A%2F%2Fwww.google.com%2F
```
Merge pull request #11 from housejester/jde-encoding

Encode collection names, keys and the search string.
reject response with non 20X response

fix tests

validate response
Merge pull request #14 from Bowery/sjkaliski-error-12

reject response with non 20X response
key value list and proper json parsing
version bump
Merge pull request #16 from Bowery/sjkaliski-kv-list

key value list and proper json parsing
Merge pull request #1 from Bowery/master

update to my fork