Implement new query interface and Solr address parameter.

This patch solves a few issues:
- Multi-core support (e.g. http://127.0.0.1/solr/mycore)
- HTTP basic auth support (e.g. http://user:pass@127.0.0.1)
- Possible HTTPS support (not tested)
- URL encoding
- Simpler and more robust Solr query parameter handling