Handle when client.Partitions returns empty slice

This can happen as documented in #49, when all the partitions for a slice
undergo leader election simultaneously.

In this case, return LeaderNotAvailable, which is true even if we haven't chosen
a partition yet :)

@burke @fw42 @patricklucas