First real commit.  Add a basic event library

Currently only supports I/O events, no events on a timer. Also includes a basic test, and a super simple 'test framework' for adding further tests.