Uniter context factory

Hook contexts are now created more simply. Expect further followups, to extract more of the logic currently still in the Uniter -- in particular, the NewActionContext bit is not good as it stands, but I don't want to grow the PR too far.