Added GCDC class, and replaced the paintContext event handler with paintGc which takes a
GCDC argument.