Fix ask() method ambiguity.

Fixes issue #35. The two `ask()` methods had overlapping signatures due to the
use of default arguments. This meant that the incorrect method was being called
in certain circumstances. The long-form now requires all three arguments, so
the signatures do not overlap any more.
Fix unit test failure.

A unit test was using the old signature for `ask()`, resulting in the wrong
method implementation being called.
And another one...