Expose 'missing'/'deferred' in 'Connection.lookup'/'Dataset.get_entities'

If 'deferred' list is not passed, the connection retries any keys in
a deferred response.

Closes #306.
Should we enforce the empty check by rejecting non-empty lists?

I think it's impossible to DTRT since `missing` here needs to be valid for two different types of methods.