Express event types as decimal as their exclusive from each other
Refactored event_type & event_descriptor into an event_descriptor struct
Remove 'sub' event structs and replaced with a single genric event struct containing fields for flags and event value
Added buffer event dispatch
Added tests for buffer events