Fixed bug in getting the AppID.

1. Bridge was writing the AppID rather than reading it.
RegisterCallback now calls InitSafe.

1. The Defcon demo calls RegisterCallback before calling Init, which is
persumably valid but frowned down upon in Valve-land.  RegisterCallback
now calls InitSafe for the app if there's no Bridge context.
2. This does introduce a potential bug where Init is called but fails
(producing no context).  As a safety feature, RegisterCallback aborts
if Init fails.