Creates Context Class to avoid static initialization fiasco
Removes all deallocators to only one with template
Corrects using of events for actions
Encapsulates enemies and shots in the Context class
Removes all the static attributes to prevent static initialization fiasco