This commit fixes a bug where ICBM explosions would not trigger Trinity
explosions on servers.
Event handlers were only being registered on the client side which means
that integration would only work in singleplayer. Also most of the ICBM
code was commented out so I assume this was mid rewrite or it was
causing build errors.
Event handlers have been split into 3 classes:
ClientEvents - Events that are only clientside, currently used
for the TextureSwitchEvent handler
CommonEvents - Events that occur on both the server and client,
currently handles player tick events
ICBMEvents - Events related to ICBM integration, handles adding the
warning tooltip and the Explosion.Start hook
Explosion code has been updated to use the new Explosion api, most
fields being used were made private.
The ICBMEvents handler is only registered if ICBM is acually enabled,
removing the need to check in the event itself