Initial commit of "midterm" folder containing the assignment

doesn't fulfil all the requirements for the midterm assignment yet....
@slead unfortunately Ruby does not have, nor understand the concept of an event. So the publish/subscribe pattern is implemented using simpler callbacks.