ENH: Better text rendering

Implements @rougier's suggestions for sharpening text rendering at large scales, and making it more robust at smaller scales. I also checked, and our size conversion is correct so long as the DPI is correct (currently fixed at 92 in the Text visual).

Ready for review/merge.

Closes #426.
I think it's `event.canvas._vp_stack[-1]`, there is currently no way to get it via the public API. I guess it's ok to do it like this, since it only happens rarely. But perhaps it makes more sense to put these lines inside `_test_to_vbo`?