Merge changes from the Mono project

The mono fork of gtk-quartz-engine had some nice fixes. I haven't reviewed everything in full and I have encountered one new bug and I'd love some input it on it. So it's not quite ready to merge. 

Some of the most noticeable new fixes are
- Menus rendering properly
- Entry widget having a proper border
- No longer conflicting with other engines

And the new bug is GtkNotebook tabs rendering incorrectly. Also the default theme needs to be improved.