Started abstracting graphics/window/input