`go vet`: explicitly ignore db.Set's error
Only append unique error messages

During search results merging, if the response Error attribute is set on
multiple responses, they were previously always appended. In the case of
a repository root being deleted, the same message would appear NumShards
times.

This change will append the incoming message if and only if it differs
from the current message, just like the common Unix `uniq` filter.
Make NewRepoFromQuery private

NewRepoFromQuery -> newRepoFromQuery, as the convenience function is
only used inside this package.
Cleanup: remove unused struct
Refactor import

"code.google.com/p/go.net/context" -> "golang.org/x/net/context"

Imports are moving away from the single user code.google.com/p/ repos to
the golang.org reflector.
Add number of concurrent searches as a flag

Providing the -num_parallel=<int> argument will search max search
parallelism to that number. The default is 8.