My try at writing an event library in Ruby