Fix several shader hunting bugs by calling RunFrameActions.

This now calls RunFrameActions from the AfterDraw method, which is called at each Context->Draw.  That gives us periodic time, and is more often than we need.

This fixes 3 bugs.  The first is getting the proper ID3D11Device for RunFrameActions, where we are sure it's the right device, because we can get it directly from the context, and not have to save it.

The second bug was some games not calling Present because of some unclear lack of wrapping on the DXGI object.  This avoids that, because we no longer need Present.

The third bug was a DirectInput problem, where if we called input before the window was created, it would freeze it in place and never work to get keys for hunting.  This avoids that by doing late-binding with the Draw method, where we are sure it's fully functional and initialized.

This should now work in all games, without any problems.