Remove debugging prints
Simple concurrent event handler
Rename buffer.Type to T
Put viewport implementation on its own file
Viewport geometry as constructor parameters
Buffer constructor from string array
NewFromFile now delegates to NewFromStrings