Search Implementation and Query Type

* adds functionality to http.go for encoding querystrings
* Consistency fis for JSONClass field name across the board (JsonClass)
* new search.go and examples implementing standard search


TODO: Add partial, and figure out which way we want to go with the search service `Do()` vs `Exec()`
@fujin looking for feedback on implementation:

There are 2 ways to search. One you create a query object and call Do() with a client, the other you call `client.Search.Exec("index", "query")  not 100% which way we want to go. I could leave the SearchQuery type and NewQuery, but add a new  Search.Run( q SearchQuery)  or something ? Sorta like attaching the method to the query, but It's not in line with how most of the rest of the api is done. Granted search is a bit unique in the api compared to other things.