Added window and event classes
Window class that creates a window with a specified context.
Event class is to prepare for event driven usage instead of
callback driven.