Switching initialization of WTF to take the options during prepare().

This makes it possible to toggle providers and make other startup-time
decisions.
With this change it's required that prepare (either/both of
wtf.trace.prepare or wtf.hud.prepare) is called before wtf.trace.start.

Partial work on #213.