This commit replaces the use of "sanity" with more inclusive
naming.
When `sanity` is used in a more general sense either `validity`
or `quick` is used.
these test a daemon request and check the expected response type
before returning the response for further specific checks
this simplifies away some checks in the tests but the bigger win is
avoiding the .(*daemon.Resp) casts everywhere, in particular
this will reduce the number of affected places if we change
somewhat the internal types used to produce responses
APIBaseSuite will be used for a while both from daemon
an daemon_test, so opt to make some field exported
for now at least
also use AddCleanup more and correctly
some cleanups in api_users_test.go in preparation to make
live in daemon_test
there are places that import timings that shouldn't indirectly get
overlord/state as well
timings strictly doesn't need state in an essential way, use an
interface to mediate between the two instead
the cost of this is having to move the timings helpers specific to
Change/Task to overlord/state itself
This refactors debugCmd into its own file, and modifies getDebug and
postDebug to call getBaseDeclaration, instead of having getDebug call
postDebug which was just asking for trouble down the line.
Also it splits the tests into its own file, but still in the daemon
package; refactoring that will take a bit more work.