Taking RECT by value instead of pointer
Whitespace formatting
Refactoring global bitmap values into a single global struct
Introducing GetClientDimension
Introducing GlobalClientDimension
Fixed OffscreenBuffer size
Clarification about negative height

http://msdn.microsoft.com/en-us/library/windows/desktop/dd183376(v=vs.85).aspx
Reading all messages instead of just one
Last change didn't actually work for some reason
We have CS_OWNDC so we can get DC only once
Calling BeginPaint and EndPaint so Windows is happy