Allow candidates to be None

Previously, `candidates` argument for `Percol.__init__` must be given
always even if it is an optional argument.

It is one of the point I mentioned in #8.