Avoid crashes when printing Cards early in their initialization
Implement New New Events

- All events are now styled in UPPERCASE_WITH_UNDERSCORES.
- broadcast() is now attached to all entities, rather than just Game. They will
  only broadcast to themselves and their child entities. This change lets us
  cleanly implement OWN_ and SELF_ events without duplicating code. Note that
  these broadcasts will only ever reach entities in play, not in hand/deck.
- No more forwardBroadcast ugliness. Card objects will merge in event listeners
  from their Card Definitions. This is weaker to Silence than Bolvar Fordragon.
- The "own death" event is now called OWN_MINION_DESTROYED for sake of clarity.
- onHeal and onDamage logic has been replaced with SELF_HEAL and SELF_DAMAGE.
- The "events" property is parsed for event names, and the class is iterated
  for event listeners (attached to entity._eventListeners).
- Added a few more tests.