Got rid of settle (almost).

Instead of settle everywhere, there is now a settle recipe.
The Q class has a default_settle property, and Plan has a
settle(t) function which will apply the settle recipe for you.
Less confusing method names.

Renamed the settle method on the Plan class to
input_settle. I do not want people to think that
settle(s) is the same as do(qd.q.settle(x)) similar to
the sw(...) method.
Fixing a bug.

future.exec() was called even if future is [].