Added AlphaEvent and EventReceiver base classes

AlphaEvent is an abstract base class that should be inherited from to
define a set of funationality and data related to a specific event such as
Event_StartGame, for example.

The EventReceiver is a templated class that should be implemented and
contained by a class or function that wants to receive a specific event.

The Receiver can then be queried safely at a specified interval to get any
new events that it receives, and then those events can be acted upon.