TINYGL: Dirty rects system.

This PR contains an implementation of dirty rects system.
You can find more information behind the design and implementation in the following blog posts: 
http://subr3v.blogspot.co.uk/

It's mostly a case of completeness, as the default operator= is a shallow copy, which will give you a headache if it ends up being used at any point.