Added basic value type
Defined the drawing abstract layer using a GDI+ like structure